簡體   English   中英

如何禁用,啟用然后再次禁用使用e.preventDefault();在ipad / iphone中滾動?

[英]How to disable, enable, then disable again scrolling in ipad/iphone with e.preventDefault();?

我已經禁用了它,可以再次啟用它。 我用了:

document.ontouchmove = function(e){
             e.preventDefault();
}

在document.ready();中 禁用它。

我用它來啟用它。

function doTouchMove(state) {
    document.ontouchmove = function(e){
      return state;
    }
}

我有它,所以當用戶雙擊某個元素時,就會調用doTouchMove。 但是如何再次禁用它?

謝謝

您可以創建一個切換,每次調用doTouchMove()函數在falsetrue之間切換時:

(function () { // Set up a closure so we don't pollute the global scope
    var state = false;
    function doTouchMove() {
        state = !state;
    }
    document.ontouchmove = function(e){
        return state;
    }
    document.getElementById("myDoubleClickElement").ondblclick = doTouchMove;
})();

現在,每次雙擊#myDoubleClickElement ,它將在falsetrue之間切換狀態變量的值,從而有效地禁用偶數點擊和奇數點擊。

我是問這個問題的同一用戶...但是我清除了歷史記錄和所有內容,因此我無法選擇答案或其他任何內容!

但是我要解決的是

document.ontouchmove = function(e){
             e.preventDefault();
}

就像doTouchMove()一樣,將其放入自己的函數中。 然后,當我希望它再次停止移動時,我只需調用該preventDefault函數的名稱即可。

我不知道為什么會有所不同,但行得通! :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM