2012-04-10 76 views

回答

28
//target the entire page, and listen for touch events 
$('html, body').on('touchstart touchmove', function(e){ 
    //prevent native touch activity like scrolling 
    e.preventDefault(); 
}); 

如果有堵塞的觸摸事件不會爲你工作,你總是可以是這樣的:

html, body{ 
    max-width:100%; 
    max-height:100%; 
    overflow:hidden; 
} 
+0

謝謝,你的jQuery代碼對我正在嘗試做的事很好。 – 2012-04-11 19:42:21

+1

您必須刪除touchstart,因爲使用它您也禁用了「點擊觸摸」事件 – 2015-09-30 07:40:51

+0

@MarcoMantovani,這不是必需條件。 – Fresheyeball 2015-09-30 18:44:47

5

我會提供了一塊不利用jQuery的,因此下一個「Javascripter」只能複製'n'paste:

var defaultPrevent=function(e){e.preventDefault();} 
document.body.parentElement.addEventListener("touchstart", defaultPrevent); 
document.body.parentElement.addEventListener("touchmove" , defaultPrevent); 
document.body.addEventListener("touchstart", defaultPrevent); 
document.body.addEventListener("touchmove" , defaultPrevent); 
+0

剛剛在Android上進行了測試。 'defaultPreventDefault()似乎不存在,但'preventDefault()'確實有效。 – 2015-07-09 18:07:17

+0

這麼多副本麪食。這是一個錯字。現在更正,謝謝。 – CyberFox 2015-07-10 09:06:00

相關問題