touch事件详解

touch 事件 一般值得是四个事件:

touchstart事件:当手指触摸屏幕时候触发

touchmove事件:当手指在屏幕上滑动的时候连续地触发(在这个事件发生期间,调用preventDefault()事件可以阻止滚动。)

touchend事件:当手指从屏幕上离开的时候触发

touchcancel事件:当触摸点被中断时会触发touchcancel事件,根据自己的具体实现而有所不同(使用很少)

event 属性

touches 当前屏幕上所有触摸点的列表数组

targetTouches 当前对象上所有触摸点的列表数组

changeTouches涉及当前(引发)事件的触摸点的列表数组

1.当一个触摸点,则3个值相同;

2. 用第二个手指接触屏幕,两个接触点,touches有两个元素,每个手指触摸点为一个值

    targetTouches和touches的情况:

    当两个手指触摸相同元素时,targetTouches和touches的值相同,

    当两个手指触摸不相同元素时,每一个事件监听到的targetTouches,changedTouches一个值,不相同

3. 用两个手指同时接触屏幕,因为触发事件的是两个手指,所以、changedTouches有两个值,每一个手指的触摸点都有一个值,

4. 手指滑动时,三个值都会发生变化

5. 一个手指离开屏幕,touches和targetTouches中对应的元素会同时移除,而changedTouches仍然会存在元素

6. 手指都离开屏幕之后,touches和targetTouches中没有值,changedTouches还会有一个值(为后触发事件的元素)此值为最后一个离开屏幕的手指的接触点。

Touch对象包含的属性

clientX:触摸目标在视口中的x坐标。

clientY:触摸目标在视口中的y坐标。

pageX:触摸目标在页面中的x坐标。

pageY:触摸目标在页面中的y坐标。

screenX:触摸目标在屏幕中的x坐标。

screenY:触摸目标在屏幕中的y坐标。

identifier:标识触摸的唯一ID。

target:触摸的DOM节点目标。

 

实践的例子:

https://www.cnblogs.com/GoTing/p/15076565.html

 

参考:https://www.cnblogs.com/mengff/p/6005516.html

上一篇:移动端原生js使用touch事件监听滑动方向


下一篇:一些简单的linux命令