监听移动端鼠标下滑事件,为什么成了浏览器默认的下拉?

最近做一个动画适配到移动端,通过下滑切换动画,这一切都做好了,在chrome浏览器f12下,选择移动端模式,点击鼠标向下滑动,效果没问题了,但是在手机上,点击屏幕下滑,却成了下拉刷新那种样子,为什么呢?

实现方式:

通过js监听这三个事件(touchstarttouchmovetouchend),然后根据移动的距离来判断是上移还是下移,如果是下移,那么执行动画切换代码,具体实现方式请参考:https://segmentfault.com/q/10...

注:上面解决方案参考:https://github.com/yutao33176...

阅读 4.5k
2 个回答

好了,正确答案是:
只需要在 touchmove 事件里面添加e.preventDefault();阻止默认行为就好了。
至于uc浏览器的问题,这是被自己坑了,之前玩手机把uc浏览器设置成pc模式了,尴尬~~~~

e.stopPropagation();
e.preventDefault();

这两个保险装置都用了?

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