移动端怎么用JS判断是手势是向上滑动还是向下滑动?

刚接触移动端的开发,请问怎么判断在移动端的滑动方向?如果在touchend里面用e.changedTouches[0].pageY减去touchstart的是可以判断,但这样要等到touch事件结束之后才能判断。如果在touchmove里面判断的话,又会多次触发判断?
请问有没有什么方法能完美的解决尽快判断方向,又不多次判断?

阅读 14.2k
3 个回答

判断方向的思路就是题主这样的。

不过,你是想判断后解决什么问题呢?

我的经验是,比如通过用户上下滑动来切换上下页,而且要实时响应用户的上拽下拉,就只能在 touchmove多次判断;而如果只需确定用户最后是要上滑还是下拉,就放到touchendtouchcancel判断好了。

我用的过程中发现根据用户速度指不定会触发哪个所以 touchend touchcancel 都绑了,你也可以测试下,快速滑动和慢慢滑动两个的触发情况。期待你的结果~

新手上路,请多包涵

碰到一样的问题,请问怎么解决

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