CustomEvent
事件是由程序创建的,可以有任意自定义功能的事件。
Note: 此特性在 Web Worker 中可用。
构造函数
CustomEvent()
创建一个自定义事件。
属性
CustomEvent.detail
只读 Any data passed when initializing the event.
This interface inherits properties from its parent, Event
:
Event.bubbles
Read only- A Boolean indicating whether the event bubbles up through the DOM or not.
Event.cancelBubble
- A historical alias to
Event.stopPropagation()
. Setting its value totrue
before returning from an event handler prevents propagation of the event. Event.cancelable
Read only- A Boolean indicating whether the event is cancelable.
Event.composed
Read only- A Boolean value indicating whether or not the event can bubble across the boundary between the shadow DOM and the regular DOM.
Event.currentTarget
Read only- A reference to the currently registered target for the event. This is the object to which the event is currently slated to be sent; it's possible this has been changed along the way through retargeting.
Event.deepPath
- An
Array
of DOMNode
s through which the event has bubbled. Event.defaultPrevented
Read only- Indicates whether or not
event.preventDefault()
has been called on the event. Event.eventPhase
Read only- Indicates which phase of the event flow is being processed.
Event.explicitOriginalTarget
Read only- The explicit original target of the event (Mozilla-specific).
Event.originalTarget
Read only- The original target of the event, before any retargetings (Mozilla-specific).
Event.returnValue
- A non-standard alternative (from old versions of Microsoft Internet Explorer) to
Event.preventDefault()
andEvent.defaultPrevented
. Event.scoped
Read only- A
Boolean
indicating whether the given event will bubble across through the shadow root into the standard DOM. This property has been renamed tocomposed
. Event.srcElement
- A non-standard alias (from old versions of Microsoft Internet Explorer) for
Event.target
. Event.target
Read only- A reference to the target to which the event was originally dispatched.
Event.timeStamp
Read only- The time at which the event was created, in milliseconds. By specification, this value is time since epoch, but in reality browsers' definitions vary; in addition, work is underway to change this to be a
DOMHighResTimeStamp
instead. Event.type
Read only- The name of the event (case-insensitive).
Event.isTrusted
Read only- Indicates whether or not the event was initiated by the browser (after a user click for instance) or by a script (using an event creation method, like event.initEvent)
方法
方法概述
void initCustomEvent(in DOMString type, in boolean canBubble, in boolean cancelable, in any detail); |
属性
Attribute | Type | Description |
---|---|---|
detail |
any |
当事件初始化时传递的数据 |
方法
initCustomEvent()
初始化一个自定义事件的方式和初始化一个标准DOM事件的方式非常相似.
void initCustomEvent( in DOMString type, in boolean canBubble, in boolean cancelable, in any detail );
参数
type
- 事件的类型名称.
canBubble
- 一个布尔值,表明该事件是否会冒泡.
cancelable
- 一个布尔值,表明该事件是否可以被取消.
detail
- 当事件初始化时传递的数据.
构造函数
DOM4 规范 添加了对 CustomEvent
构造函数的支持.
CustomEvent( DOMString type, optional CustomEventInit eventInitDict )
参数
type
- 事件的类型名称.
eventInitDict
- 一个对象,提供了事件的配置信息.查看CustomEventInit了解更多详情.
CustomEventInit
bubbles
- 一个布尔值,表明该事件是否会冒泡.
cancelable
- 一个布尔值,表明该事件是否可以被取消.
detail
- 当事件初始化时传递的数据.
CustomEvent用法示例
// 添加一个适当的事件监听器 obj.addEventListener("cat", function(e) { process(e.detail) }) // 创建并分发事件 var event = new CustomEvent("cat", {"detail":{"hazcheeseburger":true}}) obj.dispatchEvent(event)
浏览器兼容性
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | (Yes) | 6 | 9 | ? | (Yes) (533.3) |
CustomEvent() constructor |
15 | 11 | ? | 11.60 | Nightly build (535.2) |
Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | ? | ? | ? | ? | ? |
Gecko备注
该事件由nsIDOMCustomEvent
接口定义,此接口继承于nsIDOMEvent
接口.