Event.initEvent()

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

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

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

备注: 不建议再使用此方法(方法已经过时 deprecated)

可以使用特定的 event 构造器函数,比如 Event(). 该页有关于这些的更多信息 Creating and triggering events (en-US) .

语法

event.initEvent(type, bubbles, cancelable);
type

一个 DOMString 类型的字段,定义了事件的类型。

bubbles

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

cancelable

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

范例

// 创建事件。
var event = document.createEvent('Event');

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

// 设置事件监听。
elem.addEventListener('click', function (e) {
  // e.target 就是监听事件目标元素
}, false);

// 触发事件监听
elem.dispatchEvent(event);

规范

Specification
DOM Standard
# ref-for-dom-event-initevent①

浏览器兼容性

BCD tables only load in the browser

参见

  • The constructor to use instead of this deprecated method: Event(). More specific constructors can be used too.