最近在做一个页面,整个页面有个一下拉刷新的需求,页面的下半部分是一个列表,列表有懒加载功能。
在列表上下滑动的过程中,跟pulltorefresh的下拉刷新产生了冲突,具体表现为,在列表向下滑动之后,等滚动条消失后,再向上滑动,就调用了pulltorefresh的下拉刷新方法了。
看了一些js实现下拉刷新的写法,下拉刷新原理是监控页面的触摸事件,listview的下拉刷新被监控到了。
搜了很多帖子,没有看到此类的解决方法,后面看页面的dom结构时,灵机一动想到了一个解决办法。
监控滚动条滚动的距离,初始状态是0,在距离是0时,显示pulltorefresh这个组件,大于0时就销毁这个组件。
window.addEventListener('scroll', () => {
let s = document.documentElement.scrollTop || document.body.scrollTop;