EventTarget.dispatchEvent() - Web APIs 编辑
Dispatches an Event
at the specified EventTarget
, (synchronously) invoking the affected EventListener
s in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually with dispatchEvent()
.
Syntax
cancelled = !target.dispatchEvent(event)
Parameter
event
is theEvent
object to be dispatched.target
is used to initialize theEvent.target
and determine which event listeners to invoke.
Return Value
- The return value is
false
ifevent
is cancelable and at least one of the event handlers which receivedevent
calledEvent.preventDefault()
. Otherwise it returnstrue
.
The dispatchEvent()
method throws UNSPECIFIED_EVENT_TYPE_ERR
if the event's type was not specified by initializing the event before the method was called, or if the event's type is null
or an empty string.
Exceptions
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.
Notes
Unlike "native" events, which are fired by the DOM and invoke event handlers asynchronously via the event loop, dispatchEvent()
invokes event handlers synchronously. All applicable event handlers will execute and return before the code continues on after the call to dispatchEvent()
.
dispatchEvent()
is the last step of the create-init-dispatch process, which is used for dispatching events into the implementation's event model. The event can be created using Event constructor.
See also the Event object reference.
Example
See Creating and triggering events.
Specifications
Specification | Status | Comment |
---|---|---|
DOM The definition of 'EventTarget.dispatchEvent()' in that specification. | Living Standard | Initial definition in the DOM 2 Events specification. |
Browser compatibility
BCD tables only load in the browser
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论