如何在Javascript中禁用Windows滚动
我写了一些代码,我想在代码中捕获滚动事件,因此当用户滚动我的div时,滚动应该只在我的div中工作,而页面滚动事件不应该被调用(激发) 我怎么能做到 编辑:我找到了答案:我现在正在使用如何在Javascript中禁用Windows滚动,javascript,dom-events,Javascript,Dom Events,我写了一些代码,我想在代码中捕获滚动事件,因此当用户滚动我的div时,滚动应该只在我的div中工作,而页面滚动事件不应该被调用(激发) 我怎么能做到 编辑:我找到了答案:我现在正在使用preventDefault(),它现在正在工作这方面的CSS是: body.noscroll { overflow:hidden; } body.doscroll { overflow:auto; } 只需将其设为默认值并告诉javascript处理滚动,它应该可以正常工作。您可以使用jQuery这样做: $(
preventDefault()
,它现在正在工作这方面的CSS是:
body.noscroll { overflow:hidden; }
body.doscroll { overflow:auto; }
只需将其设为默认值并告诉javascript处理滚动,它应该可以正常工作。您可以使用jQuery这样做:
$('body').css({'overflow': 'hidden'});
$('element').on('event', function(){
$('body').css({'overflow': 'hidden'});
});
$('body').css({'overflow': 'auto'});
这样,您可以在侦听事件后禁用滚动作为事件处理程序。
在这样的函数中:
$('body').css({'overflow': 'hidden'});
$('element').on('event', function(){
$('body').css({'overflow': 'hidden'});
});
$('body').css({'overflow': 'auto'});
如需再次激活滚动条,以备以后需要。
是这样的:
$('body').css({'overflow': 'hidden'});
$('element').on('event', function(){
$('body').css({'overflow': 'hidden'});
});
$('body').css({'overflow': 'auto'});
以同样的方式,您将能够使用该功能处理事件以恢复滚动
希望这有帮助。不,我不想更改页面中的任何内容。这是一个插件,可以在任何页面中使用-我只想当鼠标位于此分区上时,滚动事件在页面中不起作用。您不能在MouseOver上禁用滚动,在MouseOut上启用滚动吗?