EventTarget.dispatchEvent

2 位贡献者:

这篇翻译不完整。请帮忙从英语翻译这篇文章

向一个指定的 EventTarget 派发一个事件(dispatches an Event),  以合适的顺序触发受影响的 EventListeners。(invoking the affected EventListeners in the appropriate order) 标准事件处理规则(包括事件捕获和可选的冒泡过程)通过手动的使用dispatchEvent()方法作用于被派发的事件。

语法

cancelled = !target.dispatchEvent(event)
  • event 是要被派发的 Event 事件对象。
  • target 被用来初始化 Event.target 和 决定将会触发 event listeners.
  • 当至少一个该事件的 event handler 调用了Event.preventDefault(),则返回值为false;否则返回true

如果该被派发的事件的事件类型(event's type)在方法调用之前没有被经过初始化被指定,就会抛出一个 UNSPECIFIED_EVENT_TYPE_ERR 异常,或者如果事件类型(event's type)是null或一个空字符串. event handler 就会抛出未捕获的异常(uncaught exception); 这些 event handlers 运行在一个嵌套的调用栈中(run on a nested callstack): 他们会阻塞调用直到他们处理完毕(they block the caller until they complete),但是异常不会冒泡(but exceptions do not propagate to the caller)。

注意

dispatchEvent 是event创建-初始化-派用来分发给事件模型流程实现的最后一步,(dispatchEvent is the last step of the create-init-dispatch process, which is used for dispatching events into the implementation's event model)。 其中的事件可以通过document.createEvent 方法创建, 并通过 initEvent 或其他的,更具体的说,初始化方法初始化(or other, more specific, initialization methods),比如 initMouseEvent 或 initUIEvent

相关链接 See also the Event object reference.

例子

See Creating and triggering events.

规范

文档标签和贡献者

向此页面作出贡献: teoli, charlie
最后编辑者: teoli,