觸控事件與滑鼠事件相比有兩個不同點:事件型別
1)滑鼠游標只有乙個,而觸控點可能有很多;
2)滑鼠游標可以懸停,而觸控點則不行。
是否可以取消
是否走完整個冒泡式出發過程
描述瀏覽器對該事件的預設處理方式
touchstart是是
使用者將某個觸控點置於觸控介面之上
未定義touchmove是是
使用者在觸控介面上移動觸控點
未定義touchend是是
觸控點離開了觸控區域
根據具體情況而定,可以將其視為:mousemove、mousedown、mouseup、click
touchcancel是是
觸控點的觸控動作被打斷,或是觸控點個數超出了裝置所能處理的範圍
未定義
element.
ontouchstart
=function
(e)
element.
addeventlistener
("touchstart"
,function
(e))
瀏覽器傳遞給觸控事件***的事件物件之中包含各種屬性,見下表。屬性名大部分情況下,只使用touches和changedtouches屬性就夠了。這兩個屬性值得型別都是touchlist,該型別是乙個由touch物件組成的列表。
屬性值得資料型別
描述touches
touchlist
由於介面上觸控的各個觸控點所組成的列表
changedtouches
touchlist
與上次觸控事件相比,發生改變的各個觸控點。對於touchstart事件來說,它表示那些剛剛被啟用的觸控點;對於touchmove事件來說,表示那些位置發生了移動的觸控點;對於touchend與touchcancel事件來說,則表示那些不再停留於觸控介面之上的觸控點
targettouches
touchlist
正在介面上觸控且位於當前元素範圍之內的那些觸控點。除非某個觸控點被拖到了元素範圍之外,否則該列表就等同於touches列表
altkey、ctrlkey、metakey、shiftkey
boolean
如果在觸控事件發生時,與之對應的按鍵(alt、ctrl、meta或shift處於被按下的狀態,那麼其值就是true。由於某些移動裝置並沒有物理鍵盤,所以這些屬性的值可能是不確定的)
touchlist有兩個屬性1)length
2)touch identifiedtouch(identfier)
給定某個touchlist物件,我們可以通過length屬性獲取列表中所包含touch物件的個數。其**如下:
element.
ontouchstart
=function
(e)
我們可以像運算元組那樣,訪問touchlist之中的每乙個touch元素;
element.
ontouchstart
=function
(e)}
每個touch物件都有乙個獨特的識別符號,如果touchlist其存在有特定識別符號的touch物件,那麼identifiedtouch()方法就返回它。當你想要了解某乙個觸控點是否參與了對個觸控事件時,該方法是很有用的。
觸控事件***最終還是需要檢查touch物件本身的屬性。下表列出了touch物件的各個屬性。屬性名
屬性值得資料型別
描述clientx
long
觸控點相對於視窗的x座標。該值不將滾動條的高度計算在內。
clienty
long
觸控點相對於視窗的y座標。該值不將滾動條的高度計算在內。
identifier
long
代表觸控點身份的獨特識別符號,同乙個觸控點的身份識別符號在不同事件物件中保持不變
pagex
long
觸控點相對於視窗的x座標。該值會將滾動條的寬度計算在內
pagey
long
觸控點相對於視窗y的座標。該值會將滾動條的高度計算在內
screenx
long
觸控點相對於與螢幕的x座標
screeny
long
觸控點相對於與螢幕的y座標
target
eventtarget
觸控動作開始時,觸控點所在的元素。就算該點其後被拖出了初始元素,target依然會指向一開始的那個元素
js 觸控事件
var jc 0 document.addeventlistener touchstart function event false document.addeventlistener touchmove function event false document.addeventlistener ...
JS 觸控事件 手勢事件
隨著觸屏移動端裝置的普及使用,w3c開始制定touchevent規範。除了常用的dom屬性,觸控事件還包含下列三個用於跟蹤觸控的屬性。觸控事件與手勢事件之間的關係 1 當乙個手指放在螢幕上時,會觸發touchstart事件,如果另乙個手指又放在了螢幕上,則會觸發gesturestart事件,隨後觸發...
手機觸控螢幕的JS事件
處理touch事件能讓你跟蹤使用者的每一根手指的位置。你可以繫結以下四種touch事件 一 touchstart 手指放到螢幕上的時候觸發 touchmove 手指在螢幕上移動的時候觸發 touchend 手指從螢幕上拿起的時候觸發 touchcancel 系統取消touch事件的時候觸發。至於系統...