Javascript觸摸屏事件正逐漸成為Web開發(fā)的新趨勢,越來越多的網(wǎng)站開始采用Javascript觸摸屏事件,來為用戶帶來更加優(yōu)秀的體驗。本文將詳細(xì)介紹Javascript觸摸屏事件,并通過舉例說明,幫助讀者更好的了解Javascript觸摸屏事件。
首先,讓我們來看看Javascript觸摸屏事件的類型。目前,Javascript觸摸屏事件主要分為四種,分別是:觸摸開始(touchstart)、觸摸移動(touchmove)、觸摸結(jié)束(touchend)和觸摸取消(touchcancel)。其中,觸摸開始事件是當(dāng)用戶按下手指時發(fā)生的事件,觸摸移動事件是當(dāng)用戶手指在屏幕上移動時發(fā)生的事件,觸摸結(jié)束事件是當(dāng)用戶手指離開屏幕時發(fā)生的事件,而觸摸取消事件則是在觸摸過程中,突然有一些事件發(fā)生,導(dǎo)致觸摸被取消時發(fā)生的事件。
document.addEventListener("touchstart", handleStart, false); document.addEventListener("touchmove", handleMove, false); document.addEventListener("touchend", handleEnd, false); document.addEventListener("touchcancel", handleCancel, false);
接下來,我們將通過具體的場景來演示Javascript觸摸屏事件的應(yīng)用。假設(shè)我們有一個網(wǎng)頁,其中有一個圖片元素,我們希望當(dāng)用戶通過手指拖動該圖片時,可以實現(xiàn)圖片的平移。
var img = document.getElementById('img'); var startX, startY, moveEndX, moveEndY, X, Y; img.addEventListener('touchstart', function(e) { e.preventDefault(); startX = e.touches[0].pageX; startY = e.touches[0].pageY; }, false); img.addEventListener('touchmove', function(e) { e.preventDefault(); moveEndX = e.changedTouches[0].pageX; moveEndY = e.changedTouches[0].pageY; X = moveEndX - startX; Y = moveEndY - startY; img.style.left = X+"px"; img.style.top = Y+"px"; }, false);
如上代碼所示,我們先通過document.getElementById方法獲取到圖片元素,并將其賦值給img變量。接著,我們通過添加touchstart和touchmove事件的監(jiān)聽器,來實現(xiàn)用戶通過手指拖動圖片的功能。在touchstart事件中,我們獲取到用戶按下手指時的位置,并將其保存在startX和startY變量里面。在touchmove事件中,我們計算出手指在屏幕上移動的距離,通過將該距離賦值給img元素的left和top樣式屬性,來實現(xiàn)圖片的平移。
以上就是Javascript觸摸屏事件的具體應(yīng)用。通過Javascript觸摸屏事件的操控,我們可以很輕松的實現(xiàn)更加豐富、有趣的Web交互效果。希望本篇文章能夠?qū)ψx者有所幫助,帶來不一樣的學(xué)習(xí)體驗。