2015-03-19 39 views

回答

1

謝謝你們..發現已經是一個解決方案。在這個例子http://jsbin.com/disable-scrolling/1,我只需將點擊功能轉換爲鼠標進入/離開。對於那些有同樣問題的人,我將包含下面的代碼。

document.getElementById("enable").onclick = function() { 
    enable_scroll(); 
    document.getElementById("status").innerHTML = "enabled"; 
    document.getElementById("status").className = "enabled"; 
}; 

document.getElementById("disable").onclick = function() { 
    disable_scroll(); 
    document.getElementById("status").innerHTML = "disabled"; 
    document.getElementById("status").className = "disabled"; 
}; 



// left: 37, up: 38, right: 39, down: 40, 
// spacebar: 32, pageup: 33, pagedown: 34, end: 35, home: 36 
var keys = [37, 38, 39, 40]; 

function preventDefault(e) { 
    e = e || window.event; 
    if (e.preventDefault) e.preventDefault(); 
    e.returnValue = false; 
} 

function keydown(e) { 
    for (var i = keys.length; i--;) { 
     if (e.keyCode === keys[i]) { 
      preventDefault(e); 
      return; 
     } 
    } 
} 

function wheel(e) { 
    preventDefault(e); 
} 

function disable_scroll() { 
    if (window.addEventListener) { 
     window.addEventListener('DOMMouseScroll', wheel, false); 
    } 
    window.onmousewheel = document.onmousewheel = wheel; 
    document.onkeydown = keydown; 
} 

function enable_scroll() { 
    if (window.removeEventListener) { 
     window.removeEventListener('DOMMouseScroll', wheel, false); 
    } 
    window.onmousewheel = document.onmousewheel = document.onkeydown = null; 
} 
+0

mark as accepted – 2015-03-19 05:20:37