手机设备上touchstart与click的区别

Posted liaozhenghan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手机设备上touchstart与click的区别相关的知识,希望对你有一定的参考价值。

1.基本定义

  • touchstart 手指触碰开始就能触发
  • click
    1.手指触碰
    2.手指未在屏幕上移动
    3.在这个dom上手指离开屏幕
    4.触摸和离开屏幕之间的时间间隔较短
    因此,click事件有其独特的地方,不能完全用touchstart替代。

2.click延时问题

因为手机浏览器上,两次轻触是放大操作,在第一次被轻触后,浏览器需要先等一段时间,检测是否有第二次连续触碰,才会触发click时间,click时间通常会延迟300ms左右。
解决方法:在touchstart和touchend时记录时间和手指位置,在touchend时进行比较,如果手指为同一位置且时间很短,且期间未触发touchmove时间,则可以认为触发click时间,即为tap事件



作者:星月西
链接:https://www.jianshu.com/p/ab1f57016f1b
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。











以上是关于手机设备上touchstart与click的区别的主要内容,如果未能解决你的问题,请参考以下文章

如何解决 touchstart 事件与 click 事件的冲突

html5 touch覆盖了click事件怎么解决

移动端web,tap与click事件

[移动端]移动端上遇到的各种坑与相对解决方式

[移动端]移动端上遇到的各种坑与相对解决方案

创建支持触摸和单击的绑定