1. 程式人生 > 其它 >touch事件詳解

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