Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Element: contextmenu-Ereignis
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Dascontextmenu-Ereignis wird ausgelöst, wenn der Benutzer versucht, ein Kontextmenü zu öffnen. Dieses Ereignis wird typischerweise durch Klicken der rechten Maustaste oder durch Drücken der Kontextmenütaste ausgelöst.
Im letzteren Fall wird das Kontextmenü unten links im fokussierten Element angezeigt, es sei denn, das Element ist ein Baum. In diesem Fall wird das Kontextmenü unten links in der aktuellen Zeile angezeigt.
Jedes Rechtsklick-Ereignis, das nicht deaktiviert wurde (durch Aufrufen derpreventDefault()-Methode des Klickevents), führt dazu, dass eincontextmenu-Ereignis auf das anvisierte Element ausgelöst wird.
Hinweis:Eine Ausnahme in Firefox: Wenn der Benutzer dieShift-Taste gedrückt hält, während er mit der rechten Maustaste klickt, wird das Kontextmenü angezeigt, ohne dass eincontextmenu-Ereignis ausgelöst wird.
In diesem Artikel
Syntax
Verwenden Sie den Ereignisnamen in Methoden wieaddEventListener() oder setzen Sie eine Ereignishandler-Eigenschaft.
addEventListener("contextmenu", (event) => { })oncontextmenu = (event) => { }Ereignistyp
EinPointerEvent. Erbt vonMouseEvent.
Hinweis:In früheren Versionen der Spezifikation war der Ereignistyp für dieses Ereignis einMouseEvent. Überprüfen Sie dieBrowser-Kompatibilität für weitere Informationen.
Ereigniseigenschaften
Diese Schnittstelle erbt Eigenschaften vonMouseEvent undEvent.
PointerEvent.altitudeAngleSchreibgeschütztExperimentellRepräsentiert den Winkel zwischen einer Transducer-Achse (einem Zeiger oder Stylus) und der X-Y-Ebene eines Geräteschirms.
PointerEvent.azimuthAngleSchreibgeschütztExperimentellRepräsentiert den Winkel zwischen der Y-Z-Ebene und der Ebene, die sowohl die Transducer-Achse (ein Zeiger oder Stylus) als auch die Y-Achse enthält.
PointerEvent.pointerIdSchreibgeschütztEine eindeutige Kennung für den Zeiger, der das Ereignis verursacht.
PointerEvent.widthSchreibgeschütztDie Breite (Länge auf der X-Achse), in CSS-Pixel, der Kontaktfläche des Zeigers.
PointerEvent.heightSchreibgeschütztDie Höhe (Länge auf der Y-Achse), in CSS-Pixel, der Kontaktfläche des Zeigers.
PointerEvent.pressureSchreibgeschütztDer normalisierte Druck des Zeigereingangs im Bereich von
0bis1, wobei0und1den minimalen und maximalen Druck darstellen, den die Hardware erkennen kann.PointerEvent.tangentialPressureSchreibgeschütztDer normale tangentiale Druck des Zeigereingangs (auch bekannt als Barrel-Druck oderZylinderbelastung) im Bereich von
-1bis1, wobei0die neutrale Position der Steuerung darstellt.PointerEvent.tiltXSchreibgeschütztDer Winkel in der Ebene (in Grad, im Bereich von
-90bis90) zwischen der Y-Z-Ebene und der Ebene, die sowohl die Zeigerachse (z.B. Stift) als auch die Y-Achse enthält.PointerEvent.tiltYSchreibgeschütztDer Winkel in der Ebene (in Grad, im Bereich von
-90bis90) zwischen der X-Z-Ebene und der Ebene, die sowohl die Zeigerachse (z.B. Stift) als auch die X-Achse enthält.PointerEvent.twistSchreibgeschütztDie Drehung des Zeigers (z.B. Stift) um seine Hauptachse im Uhrzeigersinn, in Grad, mit einem Wert im Bereich von
0bis359.PointerEvent.pointerTypeSchreibgeschütztGibt den Gerätetyp an, der das Ereignis verursacht hat (Maus, Stift, Berührung usw.).
PointerEvent.isPrimarySchreibgeschütztGibt an, ob der Zeiger den primären Zeiger dieses Zeigertyps darstellt.
Beispiele
>Dascontextmenu-Ereignis abbrechen
In diesem Beispiel wird die Standardaktion descontextmenu-Ereignisses mitpreventDefault() abgebrochen, wenn dascontextmenu-Ereignis beim ersten Absatz ausgelöst wird. Infolgedessen wird der erste Absatz beim Rechtsklick nichts tun, während der zweite Absatz das standardmäßige Kontextmenü Ihres Browsers anzeigen wird.
Hinweis:In Firefox wird das Kontextmenü angezeigt, wenn Sie dieShift-Taste gedrückt halten und mit der rechten Maustaste klicken, ohne dass dascontextmenu-Ereignis ausgelöst wird. Daher stoppt das Abbrechen des Ereignisses die Anzeige des Kontextmenüs nicht.
HTML
<p>The context menu has been disabled on this paragraph.</p><p>But it has not been disabled on this one.</p>JavaScript
const noContext = document.getElementById("noContextMenu");noContext.addEventListener("contextmenu", (e) => { e.preventDefault();});Ergebnis
Spezifikationen
| Specification |
|---|
| UI Events> # event-type-contextmenu> |