--- title: MouseEvent slug: Web/API/MouseEvent tags: - API - DOM - DOM Events - Interface - Reference translation_of: Web/API/MouseEvent ---
{{APIRef("DOM Events")}}
Die MouseEvent
Schnittstelle stellt Events bereit, die während der Benutzerinteraktion mit einem Zeigegerät (zum Beispiel eine Maus) auftreten. Häufige Events, die diese Schnittstelle nutzen sind {{event("click")}}, {{event("dblclick")}}, {{event("mouseup")}}, {{event("mousedown")}}.
MouseEvent
wird vererbt von {{domxref("UIEvent")}}, welches wiederum vererbt wird von {{domxref("Event")}}. Obwohl die {{domxref("MouseEvent.initMouseEvent()")}} Methode wegen der Rückwärtskompatibilität bleibt, sollte das Erstellen eines MouseEvent
Objekts durch den {{domxref("MouseEvent.MouseEvent", "MouseEvent()")}} Konstruktor erfolgen.
Mehrere spezifischere Events basieren auf MouseEvent, davon {{domxref("WheelEvent")}} und {{domxref("DragEvent")}}.
MouseEvent
Objekt.Diese Schnittstelle erbt Eigenschaften der Elternobjekte {{domxref("UIEvent")}} und {{domxref("Event")}}.
true
zurück wenn die alt Taste gedrückt war, während das MouseEvent ausgelöst wurde.Die Buttons, die losgelassen wurden (sofern vorhanden) während das MouseEvent ausgelöst wurde.
true
zurück, wenn die control Taste gedrückt war, während das MouseEvent ausgelöst wurde.true
zurück, wenn die meta Taste gedrückt war, während das MouseEvent ausgelöst wurde.null
zurückgegeben.Das sekundäre Zielobjekt des Events, sofern verfügbar.
true
zurück, wenn die shift Taste gedrückt war, während das MouseEvent ausgelöst wurde.0.0
(Minimalste Druckstärke) und 1.0
(Maximalster Druckstärke)Der Typ des Geräts das den Event generiert hat (eine der MOZ_SOURCE_*
Konstanten die weiter unten gelistet werden). Es ermöglicht zum Beispiel die Bestimmung ob ein MouseEvent tatsächlich von einer Maus oder von einem Touchgerät ausgelöst wurde (welches den Grad der Genauigkeit beeinflusst, mit dem man die Koordinaten des Events betrachten kann).
Das Interface erbt auch die Methoden seiner Eltern, {{domxref("UIEvent")}} und {{domxref("Event")}}.
MouseEvent
. Wenn der Event bereits ausgesendet wurde, wird durch diese Methode nichts passieren.Dieses Beispiel demonstriert das Simulieren eines Klicks (die programmatische Erzeugung eines Klickereignisses) auf eine Checkbox mittels DOM Methoden.
function simulateClick() { var evt = new MouseEvent("click", { bubbles: true, cancelable: true, view: window }); var cb = document.getElementById("checkbox"); //element to click on var canceled = !cb.dispatchEvent(evt); if(canceled) { // A handler called preventDefault alert("canceled"); } else { // None of the handlers called preventDefault alert("not canceled"); } } document.getElementById("button").addEventListener('click', simulateClick);
<p><label><input type="checkbox" id="checkbox"> Checked</label> <p><button id="button">Click me</button>
Auf den Button klicken, um zu sehen wie das Beispiel funktioniert:
{{ EmbedLiveSample('Example', '', '', '') }}
Specification | Status | Comment |
---|---|---|
{{SpecName('CSSOM View','#extensions-to-the-mouseevent-interface', 'MouseEvent')}} | {{Spec2('CSSOM View')}} | Redefines MouseEvent from long to double. This means that a PointerEvent whose pointerType is mouse will be a double. |
{{SpecName("HTML WHATWG", "#dom-mouseevent-region", "MouseEvent.region")}} | {{Spec2('HTML WHATWG')}} | From {{SpecName('DOM3 Events')}}, added the region property. |
{{SpecName('Pointer Lock','#extensions-to-the-mouseevent-interface','MouseEvent')}} | {{Spec2('Pointer Lock')}} | From {{SpecName('DOM3 Events')}}, added movementX and movementY properties. |
{{SpecName('CSSOM View', '#extensions-to-the-mouseevent-interface', 'MouseEvent')}} | {{Spec2('CSSOM View')}} | From {{SpecName('DOM3 Events')}}, added offsetX and offsetY , pageX and pageY , x, and y properties. Redefined screen, page, client and coordinate (x and y) properties as double from long . |
{{SpecName('DOM3 Events','#events-mouseevents','MouseEvent')}} | {{Spec2('DOM3 Events')}} | From {{SpecName('DOM2 Events')}}, added the MouseEvent() constructor, the getModifierState() method and the buttons property. |
{{SpecName('DOM2 Events','#Events-MouseEvent','MouseEvent')}} | {{Spec2('DOM2 Events')}} | Initial definition. |
{{ CompatibilityTable() }}
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} |
{{domxref("MouseEvent.movementX","movementX")}} {{domxref("MouseEvent.movementY","movementY")}} |
{{CompatChrome(37)}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} {{property_prefix("moz")}} | {{ CompatUnknown() }} | {{CompatVersionUnknown()}} | {{ CompatUnknown() }} |
{{ domxref("MouseEvent.buttons", "buttons") }} | {{CompatChrome(43)}} | {{CompatVersionUnknown()}} | {{ CompatVersionUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{CompatNo}} |
{{ domxref("MouseEvent.which", "which") }} | {{CompatChrome(1)}} | {{CompatVersionUnknown()}} | 1.0 | 9.0 | 5.0 | 1.0 |
{{domxref("MouseEvent.getModifierState()", "getModifierState()")}} | {{CompatChrome(47)}} | {{CompatVersionUnknown()}} | {{CompatGeckoDesktop(15)}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} | {{CompatVersionUnknown()}} |
{{domxref("MouseEvent.mozPressure", "mozPressure")}} and {{domxref("MouseEvent.mozInputSource", "mozInputSource")}} {{non-standard_inline}} | {{CompatNo}} | {{ CompatUnknown() }} | {{CompatGeckoDesktop(2)}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}} | {{CompatChrome(45)}} | {{ CompatUnknown() }} | {{CompatGeckoDesktop(11)}} | 9.0 | {{CompatVersionUnknown()}} | {{ CompatUnknown() }} |
{{domxref("MouseEvent.region")}} | {{CompatChrome(51)}}[1] | {{ CompatUnknown() }} | {{CompatGeckoDesktop(32)}} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} |
{{domxref("MouseEvent.offsetX")}}, and {{domxref("MouseEvent.offsetY")}} | {{CompatVersionUnknown()}} | 9 | {{CompatGeckoDesktop(40)}} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} |
{{domxref("MouseEvent.screenX")}}, {{domxref("MouseEvent.screenY")}}, {{domxref("MouseEvent.clientX")}}, and {{domxref("MouseEvent.Y")}} are double instead of long. | {{CompatChrome(56)}} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | {{CompatNo}} | {{CompatNo}} | {{CompatVersionUnknown}} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} |
[1] Setzt das Aktivieren von ExperimentalCanvasFeatures
voraus.