Dev Faq
0
votes

Empêcher la mienne roue 1s après la roue de la souris

J'ai un problème, je veux comme ça: xxx

ou comme ceci: Vous avez roulé de la roue à plusieurs reprises dans 1S, fonctionne dans l'événement de la mouse. Quelqu'un aidez-moi!

javascript mousewheel

1 commentaires

Dupliqué possible de Peut-on expliquer la fonction "DEBONCE" dans JavaScript


3 Réponses :


1
votes
var scrollstop = false;

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

1 commentaires

@ N15M0_JK Yeah, votre seul ressemble un peu mieux avec le booléen initialement défini sur True, il se sent un peu plus intuitif.



1
votes

Vous pouvez faire quelque chose comme ceci:

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);


0 commentaires

0
votes
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.

0 commentaires

Articles qui pourrait vous intéresser :

Impossible d'importer le module "@ angular / material"
Interaction profonde avec break and catch
Utilisation de node.js comment renommer tous les fichiers d'un dossier
Google Chrome Uncaught (promis) DOMException lors de la lecture AUDIO
© 2020 www.devfaq.fr - Licensed under  cc by-sa 3.0  with  attribution required.