EventTarget

new EventTarget()

EventTarget是一个类,可以拥有与DOM EventTarget相同的API。它添加了封装冗长函数的简写函数。例如:“on”函数是对“addEventListener”的封装。

成员

(受保护) allowedEvents_

一个对象,其中包含事件名称作为键,布尔值作为值。

注意:如果此处将事件名称设置为trueEventTarget#trigger将具有额外功能。有关更多信息,请参阅该函数。

属性
名称类型描述
EventTarget.prototype.allowedEvents_

方法

addEventListener()

EventTarget#on 的别名。允许 EventTarget 模拟标准 DOM API。

any(type, fn)

此函数将添加一个事件监听器,该监听器仅触发一次,并从所有事件中移除。这就像使用EventTarget#on添加一个事件监听器数组,并在第一次触发时对所有事件调用EventTarget#off

参数
名称类型描述
类型字符串 | 字符串数组

一个事件名称或事件名称数组。

函数函数

为每个事件名称调用一次的函数。

dispatchEvent()

EventTarget#trigger 的别名。允许 EventTarget 模拟标准 DOM API。

off(type, fn)

EventTarget实例中移除特定事件的事件监听器。这使得当指定事件发生时,事件监听器将不再被调用。

参数
名称类型描述
类型字符串 | 字符串数组

一个事件名称或事件名称数组。

函数函数

要移除的函数。

on(type, fn)

EventTarget实例添加一个事件监听器事件监听器是一个函数,当某个名称的事件被触发时,该函数将被调用。

参数
名称类型描述
类型字符串 | 字符串数组

一个事件名称或事件名称数组。

函数函数

使用EventTargets调用的函数。

one(type, fn)

此函数将添加一个事件监听器,该监听器仅触发一次。第一次触发后,它将被移除。这就像使用EventTarget#on添加一个事件监听器,并在触发时对自己调用EventTarget#off

参数
名称类型描述
类型字符串 | 字符串数组

一个事件名称或事件名称数组。

函数函数

为每个事件名称调用一次的函数。

removeEventListener()

EventTarget#off 的别名。允许 EventTarget 模拟标准 DOM API。

trigger(event)

此函数会触发一个事件的发生。这将导致所有等待该事件的事件监听器被调用。如果事件没有事件监听器,则什么都不会发生。

如果正在触发的事件名称在EventTarget.allowedEvents_中,Trigger 还会调用 on + uppercaseEventName 函数。

示例:'click' 在EventTarget.allowedEvents_中,因此,如果存在,Trigger 将尝试调用 onClick

参数
名称类型描述
事件字符串 | EventTarget~事件 | 对象

事件的名称,一个Event对象,或一个其类型键设置为事件名称的对象。