EventTarget: dispatchEvent() method
The dispatchEvent()
method of the EventTarget
sends an Event
to the object, (synchronously) invoking the affected event listeners in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually with dispatchEvent()
.
Calling dispatchEvent()
is the last step to firing an event. The event should have already been created and initialized using an Event()
constructor.
Note: When calling this method, the Event.target
property is initialized to the current EventTarget
.
Unlike "native" events, which are fired by the browser and invoke event handlers asynchronously via the event loop, dispatchEvent()
invokes event handlers synchronously. All applicable event handlers are called and return before dispatchEvent()
returns.
Syntax
Parameter
-
event
-
The Event
object to dispatch. Its Event.target
property will be set to the current EventTarget
.
Return value
false
if event
is cancelable, and at least one of the event handlers which received event
called Event.preventDefault()
. Otherwise true
.
Exceptions
InvalidStateError
DomException
-
Thrown if the event's type was not specified during event initialization.
Warning: Exceptions thrown by event handlers are reported as uncaught exceptions. The event handlers run on a nested callstack; they block the caller until they complete, but exceptions do not propagate to the caller.
Example
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
dispatchEvent |
4 |
12 |
2 |
9
6–11Older versions of IE supported an equivalent, proprietary EventTarget.fireEvent() method.
|
9 |
3.1 |
4 |
18 |
4 |
10.1 |
3 |
1.0 |
See also