Je travaille sur la rédaction d'une barre de défilement personnalisée et je attrape l'événement de la mouse. J'utilise cela pour régler ensuite le ScrollTop de l'élément que je veux faire défiler. P>
existe-t-il un nombre standard de pixels défilés, ou varie-t-il d'un système au système? P>
Je montre 114px dans la dernière construction de Firefox: P>
p>
6 Réponses :
De nombreux pilotes de souris vous permettent de définir la distance défilée par la roue de la souris. Il n'y a donc pas une distance standard. J'essayerais votre code pendant un moment et je choisis une distance qui vous empêche de faire défiler toute la journée mais ne saute pas de mile à chaque défilement. Vous avez un peu besoin de «sentir». Obtenez des amis à donner des commentaires, cela aide à laisser quelques mains toucher ce genre de chose. P>
Je ne pense pas que les pilotes de souris soient seuls responsables de la "distance défilée par la roue de la souris". Chaque événement de la molette de la souris indique un peu d'angle que la roue a été tournée. Traduction de wm_mousewheel code> à
wm_vscroll code> est une fonction du sous-système GUI sur le dessus du pilote.
Je pense que @Kirk essaie de déterminer à quelle distance pour faire défiler les pixels, pas à quel point la roue a été tournée.
Vous aurez besoin de stocker la position de défilement actuelle avant le rouleau, puis lorsque vous détectez un rouleau, obtenez la distance parcourue de moi réfléchit. P>
Nous pouvons contrôler avec JavaScript. Reportez-vous ci-dessous le lien. J'espère que cela vous aidera. P>
On dirait que vous l'avez défini sur 5PX * la valeur Delta de l'événement de la mouse.
pour Firefox, vous avez l'événement code> MozMousePixelsCroll CODE>, qui signale le nombre de pixels à défiler dans e.detail code>.
window.addEventListener('MozMousePixelScroll', function(e) {
console.log(e.detail);
});
Habituellement, chaque roue de souris "Tick" correspond à un nombre configurable (par utilisateur) de pixels. p>
sous Windows, par exemple, la distance défilée par chaque roue de la souris doit être une fonction de
ici Vous pouvez trouver plus d'informations sur le sujet. p> SystemParameTersInfo (SPI_GETWheelsColllines, ...) CODE> Paramètre. P>
J'ai noté que dans Google Chrome - c'est 100px par défilement de la souris p>
53px sur mon PC, également avec chrome (Ubuntu 12.04 LTS).
53px ici aussi (Ubuntu 14.04).
100px, juste comme des états la réponse - Environnement: Google Chrome 87.0 (202020), Windows 7, 1080p
4PX ici sur A4Tech N-320 et OSX Catalina
Il y a mooools.net/forge/p/scrollspy et twitter.github.com/bootstrap/javascript.html#scrollspy