我需要检测鼠标滚轮的使用情况,但是当我添加一个事件侦听器时,无论我如何摆弄它,它都会阻止整个页面滚动。我也尝试过使用 Brandon 的鼠标滚轮插件,但无济于事。我需要一些简单的东西,比如这个模型代码:
用户已使用鼠标滚轮:boolean=true
如果 boolean==true:执行代码,然后将 boolean 改回 false,直到下次使用鼠标滚轮。
我是新手,所以不要过度使用它,谢谢。
我需要检测鼠标滚轮的使用情况,但是当我添加一个事件侦听器时,无论我如何摆弄它,它都会阻止整个页面滚动。我也尝试过使用 Brandon 的鼠标滚轮插件,但无济于事。我需要一些简单的东西,比如这个模型代码:
用户已使用鼠标滚轮:boolean=true
如果 boolean==true:执行代码,然后将 boolean 改回 false,直到下次使用鼠标滚轮。
我是新手,所以不要过度使用它,谢谢。
我想你需要这样的东西。请记住,这也将检测键盘滚动(向下键)。如果您只想检测滚动:
$(window).scroll(function () {
//scroll
);
如果你想在上下滚动之间推迟:
var lastScrollTop = 0;
$(window).scroll(function () {
var st = $(this).scrollTop();
//downscroll
if (st > lastScrollTop){
}
//upscroll
else{
}
lastScrollTop = st;
);
对不起,我的答案不是你要找的。使用 Abdul Sy 的答案,而不是滚动,查看此绑定鼠标滚轮事件 - http://www.jquerysdk.com/api/event-mousewheel
如果您的函数返回 false,则取决于 JavaScript 框架,滚动的默认行为可能会受到影响。
我建议只触发一个自定义事件来收听您的滚动。
像这样的东西:
$(document).mousewheel(function(e){
$(document).trigger('MyApp/ScollHappened', iCanPassValues);
});
在您的应用程序中更高一点,您可以在不干扰实际滚动事件的情况下执行计算。
$(document).on('MyApp/ScrollHappened', function(event, ...){
//Doing my calculations
})