Jquery 使用箭头键禁用和启用滚动
我想禁用此网站上的滚动,直到单击“加入邮件列表”按钮。以下是网站:Jquery 使用箭头键禁用和启用滚动,jquery,scroll,key,pc,isenabled,Jquery,Scroll,Key,Pc,Isenabled,我想禁用此网站上的滚动,直到单击“加入邮件列表”按钮。以下是网站: 此外,有个人电脑的人告诉我,没有任何滚动的方法是有效的。我再也没有电脑了,我也不知道为什么。在S.O.S.之前的问题中,我似乎找不到任何解释。在我的电脑(mac)上,滚动的方式应该是鼠标滚轮和触摸板滚动,但看起来箭头键根本没有滚动。这似乎与浏览器的类型无关 下面是与滚动相关的代码。。。 JS: $('#about-section').click(function (e) { e.preventDefault(); if
此外,有个人电脑的人告诉我,没有任何滚动的方法是有效的。我再也没有电脑了,我也不知道为什么。在S.O.S.之前的问题中,我似乎找不到任何解释。在我的电脑(mac)上,滚动的方式应该是鼠标滚轮和触摸板滚动,但看起来箭头键根本没有滚动。这似乎与浏览器的类型无关 下面是与滚动相关的代码。。。 JS:
$('#about-section').click(function (e) {
e.preventDefault();
if ($(this).hasClass('disable_scroll'))
return false;
else
window.location.href = $(this).attr('href');
});
if (disable_scroll == true)
$('#about-section').addClass('disabled')
else
$('#about-section').removeClass('disabled')
$(document).ready(function() {
disable_scroll();
})
document.getElementById("enable").onclick = function() {
enable_scroll();
};
document.getElementById("to-about-section").onclick = function() {
disable_scroll();
};
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, keydown, false);
}
window.onmousewheel = document.onmousewheel = wheel;
document.onkeydown = keydown;
}
function enable_scroll() {
if (window.removeEventListener) {
window.removeEventListener('DOMMouseScroll', wheel, keydown, false);
}
window.onmousewheel = document.onmousewheel = document.onkeydown = true;
}