亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

html5的touch事件怎么實現

發布時間:2022-03-09 10:50:42 來源:億速云 閱讀:192 作者:iii 欄目:web開發

今天小編給大家分享一下html5的touch事件怎么實現的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

規范

這里我們介紹幾種普及得比較好的觸摸事件,你可以在絕大多數現代瀏覽器中來測試這一事件(必須是觸屏設備哦):

touchstart:觸摸開始的時候觸發

touchmove:手指在屏幕上滑動的時候觸發

touchend:觸摸結束的時候觸發

而每個觸摸事件都包括了三個觸摸列表,每個列表里包含了對應的一系列觸摸點(用來實現多點觸控):

touches:當前位于屏幕上的所有手指的列表。

targetTouches:位于當前DOM元素上手指的列表。

changedTouches:涉及當前事件手指的列表。

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

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

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

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

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

有了這些信息,我們就可以依據這些事件信息為用戶提供不同的反饋了。

下面,我將為大家展示一個小demo,用touchmove實現的單指拖動:

復制代碼 代碼如下:

/*單指拖動*/

var obj = document.getElementById('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);

關于a標簽四個偽類在觸屏設備中的小技巧:

我們都知道a標簽的四個偽類link,visited,active,hover是專為click事件設計的,所以在觸屏網站中盡量不要使用它們。經測試大部分也是不可用的。但是這里有一個關于hover的小技巧,當你點擊過一個按鈕之后,這個按鈕就會一直處于hover的狀態,此時你基于這個偽類所設置的css也是起作用的,直到你用手指點擊另外一個按鈕,hover狀態就會轉移到另一個按鈕。利用這一點,我們可以做出一些小效果。此技巧在大多數瀏覽器中還是可用的。

以上就是“html5的touch事件怎么實現”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台南县| 桑植县| 临朐县| 普定县| 融水| 抚远县| 安吉县| 军事| 商南县| 盐津县| 东明县| 澳门| 临城县| 贵南县| 余江县| 察雅县| 讷河市| 淄博市| 安多县| 壶关县| 三明市| 沂南县| 祁阳县| 峨眉山市| 青河县| 抚宁县| 榆中县| 莎车县| 伊宁市| 芦山县| 巨野县| 苏尼特左旗| 增城市| 肥东县| 玉田县| 秦安县| 浦城县| 大埔区| 西峡县| 怀宁县| 乌恰县|