Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Element: mousewheel event
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 dieKompatibilitä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.
Dasveraltete undnicht standardisiertemousewheel-Ereignis wird asynchron an einemElement ausgelöst, um Aktualisierungen bereitzustellen, während ein Mausrad oder ein ähnliches Gerät benutzt wird. Dasmousewheel-Ereignis war nie Teil eines Standards, und obwohl es von mehreren Browsern implementiert wurde, wurde es nie von Firefox implementiert.
Hinweis:Anstelle dieses veralteten Ereignisses verwenden Sie das standardisiertewheel-Ereignis.
In diesem Artikel
Syntax
Verwenden Sie den Ereignisnamen in Methoden wieaddEventListener(), oder setzen Sie eine Ereignisbehandlereigenschaft.
addEventListener("mousewheel", (event) => { })onmousewheel = (event) => { }Ereignistyp
EinWheelEvent. Erbt vonMouseEvent,UIEvent undEvent.
Ereigniseigenschaften
Diese Schnittstelle erbt Eigenschaften von ihren Vorfahren,MouseEvent,UIEvent undEvent.
WheelEvent.deltaXSchreibgeschütztGibt ein
doublezurück, das die horizontale Scrollmenge repräsentiert.WheelEvent.deltaYSchreibgeschütztGibt ein
doublezurück, das die vertikale Scrollmenge repräsentiert.WheelEvent.deltaZSchreibgeschütztGibt ein
doublezurück, das die Scrollmenge für die z-Achse repräsentiert.WheelEvent.deltaModeSchreibgeschütztGibt ein
unsigned longzurück, der die Einheit derdelta*Werte der Scrollmenge angibt. Erlaubte Werte sind:Konstante Wert Beschreibung WheelEvent.DOM_DELTA_PIXEL0x00Die delta*-Werte sind in Pixeln angegeben.WheelEvent.DOM_DELTA_LINE0x01Die delta*-Werte sind in Zeilen angegeben. Jeder Mausklick scrollt eine Zeile Inhalt, wobei die Methode zur Berechnung der Zeilenhöhe browserabhängig ist.WheelEvent.DOM_DELTA_PAGE0x02Die delta*-Werte sind in Seiten angegeben. Jeder Mausklick scrollt eine Seite Inhalt.WheelEvent.wheelDeltaSchreibgeschütztVeraltetGibt einen Integer (32-Bit) zurück, der die Distanz in Pixeln darstellt.
WheelEvent.wheelDeltaXSchreibgeschütztVeraltetGibt einen Integer zurück, der die horizontale Scrollmenge repräsentiert.
WheelEvent.wheelDeltaYSchreibgeschütztVeraltetGibt einen Integer zurück, der die vertikale Scrollmenge repräsentiert.
Die Eigenschaft detail
Der Wert derdetail-Eigenschaft ist immer null, außer in Opera, dasdetail ähnlich dem nur in Firefox verfügbarenDOMMouseScroll-Ereignis verwendet, dessendetail-Wert den Scrollabstand in Zeilen angibt, wobei negative Werte darauf hindeuten, dass die Scrollbewegung entweder nach unten oder nach rechts erfolgt, und positive Werte darauf hinweisen, dass nach oben oder links gescrollt wird.
Hinweis:Auf macOS wird der Scrollabstand (und dadurch der Wert vondetail) basierend auf dem beschleunigten Scrollabstand berechnet.
Auf Linux wird pro nativem Wheel-Event2 oder-2 festgelegt.
Werte von wheelDelta, wheelDeltaX und wheelDeltaY
Der Wert deswheelDelta-Attributs ist ein abstrakter Wert, der angibt, wie weit das Rad gedreht wurde. Wenn das Rad vom Benutzer weg gedreht wurde, ist es positiv, andernfalls negativ. Das bedeutet, dass das Vorzeichen des Delta-Wertes sich vom Vorzeichen deswheel-Events auf DOM Level 3 unterscheidet. Die Bedeutung der Menge dieser Werte ist jedoch zwischen den Browsern nicht gleich. Siehe die folgende Erklärung für Details.
IE und Opera (Presto) unterstützen nur daswheelDelta-Attribut und unterstützen keinen horizontalen Bildlauf.
Der Wert deswheelDeltaX-Attributs gibt denwheelDelta-Attributswert entlang der horizontalen Achse an. Wenn ein Benutzer das Gerät zum Scrollen nach rechts verwendet, ist der Wert negativ. Andernfalls, d.h. wenn es nach links geht, ist der Wert positiv.
Der Wert deswheelDeltaY-Attributs gibt denwheelDelta-Attributswert entlang der vertikalen Achse an. Das Vorzeichen des Wertes ist dasselbe wie das deswheelDelta-Attributwertes.
Chrome
Unter Windows ist der Wert derselbe wie der Delta-Wert vonWM_MOUSEWHEEL oderWM_MOUSEHWHEEL. Der Wert ändert sich auch nicht, wenn der Bildlaufbetrag der Systemeinstellungen einem Seitenbildlauf entspricht, d.h. der Wert ist derselbe wie in IE unter Windows.
Unter Linux ist der Wert120 oder-120 pro nativem Wheel-Event. Dies erzeugt dasselbe Verhalten wie in IE und Chrome für Windows.
Auf Mac ist der Wert kompliziert. Der Wert ändert sich, wenn das Gerät, das das native Wheel-Event verursacht, einen kontinuierlichen Bildlauf unterstützt.
Wenn das Gerät kontinuierlichen Bildlauf unterstützt (z. B. Trackpad eines MacBook oder Mausrad, das sich reibungslos drehen lässt), wird der Wert aus dem beschleunigten Scrollbetrag berechnet. In diesem Fall ist der Wert derselbe wie bei Safari.
Wenn das Gerätkeinen kontinuierlichen Bildlauf unterstützt (typischerweise ein älteres Mausrad, das sich nicht reibungslos drehen lässt), wird der Wert aus dem nicht beschleunigten Scrollbetrag berechnet (120 pro Raste). In diesem Fall unterscheidet sich der Wert von dem in Safari.
Dieser Unterschied stellt ein ernsthaftes Problem für Webanwendungsentwickler dar. Webentwickler können nicht feststellen, durch welches Gerät dasmousewheel-Event ausgelöst wurde.
Safari
Der Wert wird immer aus dem beschleunigten Scrollbetrag berechnet. Dies ist bei anderen Browsern wirklich anders, außer bei Chrome, wenn ein Gerät mit unterstütztem kontinuierlichen Bildlauf verwendet wird.
Opera (Presto)
Der Wert ist immer derdetail-Attributswert ✕40.
Unter Windows wird derdetail-Attributswert aus dem tatsächlichen Bildlaufbetrag berechnet, weshalb der Wert sich von anderen Browsern unterscheidet, es sei denn, der Bildlaufbetrag pro Raste ist in den Systemeinstellungen 3 Zeilen oder eine Seite.
Unter Linux beträgt der Wert80 oder-80 pro nativem Wheel-Event. Dies unterscheidet sich von anderen Browsern.
Auf Mac wird derdetail-Attributswert aus dem beschleunigten Bildlaufbetrag des nativen Ereignisses berechnet. Der Wert ist normalerweise viel höher als der von Safari oder Chrome.
Spezifikationen
Nicht Teil einer Spezifikation.
Browser-Kompatibilität
Siehe auch
- Das standardisierte
wheel-Ereignis, das stattdessen verwendet werden sollte.