2012-01-27 77 views
0

我写了一段代码,我想在我的代码中使用滚动事件,并且当用户使用滚动时,仅在我的代码中滚动工作以及它的默认操作(在页面上滚动)不工作 我怎么能做到这一点? 对不起我的英文不好如何在javascript中禁用Windows滚动

编辑:我找到这个答案IM使用preventDefault()方法和它现在的工作

回答

0

这样做的CSS是:

body.noscroll { overflow:hidden; } 
body.doscroll { overflow:auto; } 

就让它违约,并告诉你的JavaScript来处理滚动,它应该工作正常。

+0

不,我不想改变页面中的任何东西它是一个插件,可以在任何页面中使用 - 我只是想当鼠标在这个div上滚动事件dosent工作在页面 – 2012-01-27 14:01:47

+0

你不能onmouseover禁用滚动,onmouseout启用滚动? – HAWood 2012-01-27 14:14:29

0

你可以把它使用jQuery这样做:

$('body').css({'overflow': 'hidden'}); 

这样你就可以禁用滚动作为一个事件处理程序后听的事件。 在这样的功能:

$('element').on('event', function(){ 
    $('body').css({'overflow': 'hidden'}); 
}); 

对于再次激活滚动的情况下,你以后需要它。 是这样的:

$('body').css({'overflow': 'auto'}); 

以同样的方式,你将能够使用该功能来处理事件带回滚动。

希望这个帮助。