Reputation: 213
I have a problem, i want like this:
$(window).on('mousewheel', function(event) {
//prevent mousewheel in 1s
//do something, after 1s, enable mousewheel
}
or like this: you rolled wheel many times in 1s, function in event mousewheel run 1 times. Someone help me!
Upvotes: 0
Views: 49
Reputation: 346
var pauseWheel = false;
$(window).on('mousewheel', function(event) {
if(pauseWheel) {
event.preventDefault();
}
else {
pauseWheel = true;
setTimeout(function(){ pauseWheel = false; }, 1000);
}
}
pauseWheel is a variable true if the mousewheel event fired in the last 1000ms.
Upvotes: 0
Reputation: 2099
You could do something like this:
var mouseWheelEnabled = true;
function doSomethingWithMousewheel(event){
if(mouseWheelEnabled){
//... your code here
// set enabled = false;
mouseWheelEnabled = false;
setTimeout(function(){
mouseWheelEnabled = true;
}, 1000);
}
}
$(window).on('mousewheel', doSomethingWithMousewheel);
Upvotes: 1
Reputation: 125
var scrollstop = false;
$(window).on('mousewheel', function(event) {
if(!scrollstop) {
scrollstop = true;
setTimeout(() => { scrollstop = false; }, 1000);
}
}
Something like this?
Upvotes: 1