EventTarget: Methode dispatchEvent()
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die dispatchEvent()-Methode des EventTarget sendet ein Event an das Objekt und ruft dabei (synchron) die betroffenen Event-Listener in der richtigen Reihenfolge auf. Die normalen Regeln der Ereignisverarbeitung (einschließlich der Capturing- und optionalen Bubbling-Phase) gelten auch für manuell mit dispatchEvent() gesendete Events.
Ein Aufruf von dispatchEvent() ist der letzte Schritt beim Auslösen eines Events. Das Ereignis sollte bereits erstellt und mit einem Event()-Konstruktor initialisiert worden sein.
Hinweis:
Beim Aufruf dieser Methode wird die Event.target-Eigenschaft auf die aktuelle EventTarget initialisiert.
Im Gegensatz zu "nativen" Ereignissen, die der Browser durch das Einreihen einer Aufgabe in die Ereignisschleife auslöst, ruft dispatchEvent() alle anwendbaren Event-Handler synchron auf, bevor es zurückkehrt. Die schreibgeschützte isTrusted-Eigenschaft ist true für native Ereignisse und false für Ereignisse, die mit dispatchEvent() gesendet wurden.
Syntax
dispatchEvent(event)
Parameter
event-
Das zu sendende
Event-Objekt. SeineEvent.target-Eigenschaft wird auf das aktuelleEventTargetgesetzt.
Rückgabewert
false, wenn das event abbrechbar ist und mindestens einer der Event-Handler, die das event erhalten haben, Event.preventDefault() aufgerufen hat. Andernfalls true.
Ausnahmen
InvalidStateErrorDomException-
Wird ausgelöst, wenn der Ereignistyp während der Ereignisinitialisierung nicht angegeben wurde.
Warnung: Ausnahmen, die von Event-Handlern geworfen werden, werden als nicht abgefangene Ausnahmen gemeldet. Die Event-Handler laufen in einem verschachtelten Aufrufstapel; sie blockieren den Aufrufer, bis sie abgeschlossen sind, aber Ausnahmen werden nicht an den Aufrufer weitergegeben.
Beispiel
Spezifikationen
| Spezifikation |
|---|
| DOM> # ref-for-dom-eventtarget-dispatchevent③> |