Event:initEvent() 方法

已弃用: 不再推荐使用该特性。虽然一些浏览器仍然支持它,但也许已从相关的 web 标准中移除,也许正准备移除或出于兼容性而保留。请尽量不要使用该特性,并更新现有的代码;参见本页面底部的兼容性表格以指导你作出决定。请注意,该特性随时可能无法正常工作。

备注: 此特性在 Web Worker 中可用。

Event.initEvent() 方法可以用来初始化由 Document.createEvent() 创建的 event 实例。

用这种方式初始化事件必须是由 Document.createEvent() 方法创建的实例。本方法必须在派发事件前调用(通过 EventTarget.dispatchEvent())。事件一旦被派发,此函数不再做其他任何事。

备注: 该方法已被弃用,请勿再使用。

与其使用该特性,不如使用特定的事件构造函数,如 Event()创建和派发事件一节提供了更多有关使用这些事件的方法的信息。

语法

js
initEvent(type, bubbles, cancelable)
type

描述事件类型的字符串。

bubbles

决定是否事件是否应该通过事件链向上冒泡的布尔值。一旦设置了这个值,只读属性Event.bubbles也会获取相应的值。

cancelable

决定该事件的默认动作是否可以被取消的布尔值。一旦设置了这个值,只读属性 Event.cancelable 也会获取相应的值。

示例

js
// 创建事件。
const event = document.createEvent("Event");

// 初始化一个点击事件,可以冒泡,无法被取消
event.initEvent("click", true, false);

// 监听事件。
elem.addEventListener(
  "click",
  (e) => {
    // e.target 与 elem 相匹配
  },
  false,
);

elem.dispatchEvent(event);

规范

Specification
DOM
# dom-event-initevent

浏览器兼容性

参见

  • 构造函数,以代替此已废弃的方法:Event()。也可以使用更具体的构造函数。