移动端touch和scroll事件距离问题

最近做的一个列表项目涉及上拉加载,我使用的方法是局部滚动个,思路是监听touchstart touchmovetouchend事件并判断是否快要接近底部了,如果接近了就加载新数据。

然而,由于touchmove的距离并不是列表内容实际滚动的距离,如果快速上拉,列表会惯性滚动到底部,touchend事件在手指离开时触发了可是此时列表尚未滚动到底部,检测是否滚动到底部也返回false,无法触发加载更多。。。

归根结底就是touchmove的距离和scroll距离不同问题,请问有何解决办法?求大佬赐教

阅读 6.1k
1 个回答

监听scroll,scrollTop(滚动高度) + window.screen.height(屏幕高度) >= document.body.clientHeight(正文高度) 判断是否滚动到底部
可以参考下,我当时也纠结了好久,后来理清楚思路后就是用这种办法做的。
touched事件也尝试过,不过不知道是不是技术不够,总觉得弄出来有点尴尬,一动就调接口

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题