Element: mousewheel Ereignis
Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Das veraltete und nicht standardisierte mousewheel Ereignis wird asynchron bei einem Element ausgelöst, um Aktualisierungen bereitzustellen, während ein Mausrad oder ein ähnliches Gerät bedient wird. Das mousewheel Ereignis war nie Teil eines Standards, und obwohl es von mehreren Browsern implementiert wurde, wurde es nie von Firefox unterstützt.
Hinweis:
Statt dieses veralteten Ereignisses verwenden Sie das standardisierte wheel Ereignis.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("mousewheel", (event) => { })
onmousewheel = (event) => { }
Ereignistyp
Ein WheelEvent. Erbt von MouseEvent, UIEvent und Event.
Die detail Eigenschaft
Der Wert der detail Eigenschaft ist immer Null, außer in Opera, das detail ähnlich wie das Firefox-exklusive DOMMouseScroll Ereignis verwendet, dessen detail-Wert die Scroll-Distanz in Zeilen angibt, wobei negative Werte angeben, dass die Scroll-Bewegung entweder nach unten oder nach rechts und positive Werte, dass sie nach oben oder links erfolgt.
Hinweis:
Auf macOS wird die Scroll-Distanz (und damit der Wert von detail) basierend auf der beschleunigten Scroll-Distanz berechnet.
Auf Linux wird pro nativem Wheel-Ereignis 2 oder -2 festgelegt.
wheelDelta, wheelDeltaX und wheelDeltaY Wert
Der wheelDelta Attributwert ist ein abstrakter Wert, der angibt, wie weit das Rad gedreht wurde. Wenn sich das Rad vom Benutzer wegdreht, ist es positiv, andernfalls negativ. Das bedeutet, dass das Vorzeichen des Delta-Werts bei DOM Level 3 Event's wheel anders ist. Die Bedeutung der Beträge dieser Werte ist jedoch zwischen Browsern nicht gleich. Siehe die folgende Erklärung für die Details.
IE und Opera (Presto) unterstützen nur das wheelDelta Attribut und unterstützen keinen horizontalen Scroll.
Der wheelDeltaX Attributwert gibt den wheelDelta Attributwert entlang der horizontalen Achse an. Wenn ein Benutzer das Gerät zum Scrollen nach rechts betätigt, ist der Wert negativ. Ansonsten, d.h. wenn es nach links geht, ist der Wert positiv.
Der wheelDeltaY Attributwert gibt den wheelDelta Attributwert entlang der vertikalen Achse an. Das Vorzeichen des Wertes ist dasselbe wie beim wheelDelta Attributwert.
Chrome
Unter Windows ist der Wert derselbe wie der Delta-Wert von WM_MOUSEWHEEL oder WM_MOUSEHWHEEL. Der Wert ändert sich auch dann nicht, wenn der Scroll-Betrag der Systemeinstellungen ein Seiten-Scroll ist, d.h. der Wert ist derselbe wie bei IE unter Windows.
Auf Linux beträgt der Wert 120 oder -120 pro nativem Wheel-Ereignis. Dies ergibt das gleiche Verhalten wie IE und Chrome für Windows.
Auf Mac ist der Wert kompliziert. Der Wert ändert sich, wenn das Gerät, das das native Wheel-Ereignis verursacht, kontinuierliches Scrollen unterstützt.
Wenn das Gerät kontinuierliches Scrollen unterstützt (z.B. Trackpad eines MacBook oder Mausrad, das reibungslos gedreht werden kann), wird der Wert aus dem beschleunigten Scroll-Betrag berechnet. In diesem Fall ist der Wert derselbe wie bei Safari.
Wenn das Gerät kein kontinuierliches Scrollen unterstützt (typischerweise ein altes Mausrad, das nicht reibungslos gedreht werden kann), wird der Wert aus dem nicht beschleunigten Scroll-Betrag (120 pro Kerbe) berechnet. In diesem Fall ist der Wert anders als bei Safari.
Dieser Unterschied stellt ein ernstes Problem für Webanwendungsentwickler dar. Nämlich, Webentwickler können nicht wissen, ob das mousewheel Ereignis durch welches Gerät verursacht wird.
Safari
Der Wert wird immer aus dem beschleunigten Scroll-Betrag berechnet. Dies unterscheidet sich wirklich von anderen Browsern, außer Chrome mit einem Gerät, das kontinuierliches Scrollen unterstützt.
Opera (Presto)
Der Wert ist immer der detail Attributwert ✕ 40.
Unter Windows, da der detail Attributwert aus dem tatsächlichen Scroll-Betrag berechnet wird, ist der Wert von anderen Browsern unterschiedlich, außer wenn der Scroll-Betrag pro Kerbe in den Systemeinstellungen 3 Zeilen oder eine Seite ist.
Auf Linux beträgt der Wert 80 oder -80 pro nativem Wheel-Ereignis. Dies unterscheidet sich von anderen Browsern.
Auf Mac wird der detail Attributwert aus dem beschleunigten Scroll-Betrag des nativen Ereignisses berechnet. Der Wert ist normalerweise viel größer als der Wert von Safari oder Chrome.
Spezifikationen
Nicht Teil irgendeiner Spezifikation.
Browser-Kompatibilität
Siehe auch
- Das standardmäßige
wheelEreignis, auf das stattdessen gehört werden sollte.