1976年贪婪的嘴唇,韩国少妇激三级做爰2023电影,久久久久久精品国产三级涨奶,妖精漫画在线观看免费漫画下拉式

整理HTML5移動端開發的常用觸摸事件
來源:易賢網 閱讀:1155 次 日期:2016-07-04 16:44:27
溫馨提示:易賢網小編為您整理了“整理HTML5移動端開發的常用觸摸事件”,方便廣大網友查閱!

這篇文章主要介紹了整理HTML5移動端開發的常用觸摸事件,觸摸事件的event對象基本上都是按照鼠標操作的屬性進行對應,需要的朋友可以參考下

HTML5中新添加了很多事件,但是由于他們的兼容問題不是很理想,應用實戰性不是太強,所以在這里基本省略,咱們只分享應用廣泛兼容不錯的事件,日后隨著兼容情況提升以后再陸續添加分享。今天為大家介紹的事件主要是觸摸事件:touchstart、touchmove和touchend。

一開始觸摸事件touchstart、touchmove和touchend是iOs版Safari瀏覽器為了向開發人員傳達一些信息新添加的事件。因為iOs設備既沒有鼠標也沒有鍵盤,所以在為移動Safari瀏覽器開發交互性網頁的時候,PC端的鼠標和鍵盤事件是不夠用的。

在iPhone 3Gs發布的時候,其自帶的移動Safari瀏覽器就提供了一些與觸摸(touch)操作相關的新事件。隨后,Android上的瀏覽器也實現了相同的事件。觸摸事件(touch)會在用戶手指放在屏幕上面的時候、在屏幕上滑動的時候或者是從屏幕上移開的時候出發。下面具體說明:

touchstart事件:當手指觸摸屏幕時候觸發,即使已經有一個手指放在屏幕上也會觸發。

touchmove事件:當手指在屏幕上滑動的時候連續地觸發。在這個事件發生期間,調用preventDefault()事件可以阻止滾動。

touchend事件:當手指從屏幕上離開的時候觸發。

touchcancel事件:當系統停止跟蹤觸摸的時候觸發。關于這個事件的確切出發時間,文檔中并沒有具體說明,咱們只能去猜測了。

上面的這些事件都會冒泡,也都可以取消。雖然這些觸摸事件沒有在DOM規范中定義,但是它們卻是以兼容DOM的方式實現的。所以,每個觸摸事件的event對象都提供了在鼠標實踐中常見的屬性:bubbles(起泡事件的類型)、cancelable(是否用 preventDefault() 方法可以取消與事件關聯的默認動作)、clientX(返回當事件被觸發時,鼠標指針的水平坐標)、clientY(返回當事件觸發時,鼠標指針的垂直坐標)、screenX(當某個事件被觸發時,鼠標指針的水平坐標)和screenY(返回當某個事件被觸發時,鼠標指針的垂直坐標)。除了常見的DOM屬性,觸摸事件還包含下面三個用于跟蹤觸摸的屬性。

touches:表示當前跟蹤的觸摸操作的touch對象的數組。

targetTouches:特定于事件目標的Touch對象的數組。

changeTouches:表示自上次觸摸以來發生了什么改變的Touch對象的數組。

每個Touch對象包含的屬性如下。

clientX:觸摸目標在視口中的x坐標。

clientY:觸摸目標在視口中的y坐標。

identifier:標識觸摸的唯一ID。

pageX:觸摸目標在頁面中的x坐標。

pageY:觸摸目標在頁面中的y坐標。

screenX:觸摸目標在屏幕中的x坐標。

screenY:觸摸目標在屏幕中的y坐標。

target:觸目的DOM節點目標。

每個觸摸點由包含了如下觸摸信息(常用):

identifier:一個數值,唯一標識觸摸會話(touch session)中的當前手指。一般為從0開始的流水號(android4.1,uc)

target:DOM元素,是動作所針對的目標。

pageX/pageX/clientX/clientY/screenX/screenY:一個數值,動作在屏幕上發生的位置(page包含滾動距離,client不包含滾動距離,screen則以屏幕為基準)。

radiusX/radiusY/rotationAngle:畫出大約相當于手指形狀的橢圓形,分別為橢圓形的兩個半徑和旋轉角度。初步測試瀏覽器不支持,好在功能不常用,歡迎大家反饋。

JavaScript操作小例子:

JavaScript Code

var obj = document.getElementByIdx_x('id');   

obj.addEventListener('touchmove', function(event) {   

     // 如果這個元素的位置內只有一個手指的話   

    if (event.targetTouches.length == 1) {   

event.preventDefault();// 阻止瀏覽器默認事件,重要    

        var touch = event.targetTouches[0];   

        // 把元素放在手指所在的位置   

        obj.style.left = touch.pageX-50 + 'px';   

        obj.style.top = touch.pageY-50 + 'px';   

        }   

}, false);  

更多信息請查看網頁制作
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
主站蜘蛛池模板: 泾川县| 五莲县| 昭苏县| 鄂伦春自治旗| 临汾市| 惠水县| 长丰县| 宣城市| 平度市| 土默特右旗| 泰兴市| 如东县| 香港 | 乐都县| 岫岩| 上虞市| 双鸭山市| 五常市| 民乐县| 昆山市| 黄骅市| 西乡县| 眉山市| 原阳县| 大悟县| 尚志市| 甘肃省| 南岸区| 桐乡市| 平利县| 嘉禾县| 宁晋县| 海丰县| 九台市| 桐梓县| 铜山县| 德钦县| 呼玛县| 象州县| 西丰县| 长寿区|