предотвратить колесико мыши 1с после колесика мыши - PullRequest
0 голосов
/ 17 мая 2019

У меня проблема, я хочу вот так:

$(window).on('mousewheel', function(event) {
  //prevent mousewheel in 1s
  //do something, after 1s, enable mousewheel
}

или как это: Вы прокручивали колесо много раз в 1 с, функция в случае колесика мыши запускалась 1 раз. Кто-нибудь, помогите мне!

Ответы [ 3 ]

1 голос
/ 17 мая 2019

Вы можете сделать что-то вроде этого:

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);
1 голос
/ 17 мая 2019
var scrollstop = false;

$(window).on('mousewheel', function(event) {
  if(!scrollstop) {
    scrollstop = true;
    setTimeout(() => { scrollstop = false; }, 1000);
  }
}

Как то так?

0 голосов
/ 17 мая 2019
var pauseWheel = false;
$(window).on('mousewheel', function(event) {
     if(pauseWheel) {
         event.preventDefault();
     }
     else {
         pauseWheel = true;
         setTimeout(function(){ pauseWheel = false; }, 1000);
     }
}

pauseWheel - это переменная true, если событие mousewheel сработало за последние 1000 мс.

...