-
public interface EventTarget
EventTarget
接口由所有Nodes
在支持DOM事件模型的实现中实现。 因此,可以通过在Node
接口的实例上使用特定于绑定的转换方法来获取此接口。 该接口允许登记和去除EventListeners
上EventTarget
和调度事件到的EventTarget
。另见Document Object Model (DOM) Level 2 Events Specification 。
- 从以下版本开始:
- 1.5,DOM Level 2
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 void
addEventListener(String type, EventListener listener, boolean useCapture)
此方法允许在事件目标上注册事件侦听器。boolean
dispatchEvent(Event evt)
此方法允许将事件分派到实现事件模型中。void
removeEventListener(String type, EventListener listener, boolean useCapture)
此方法允许从事件目标中删除事件侦听器。
-
-
-
方法详细信息
-
addEventListener
void addEventListener(String type, EventListener listener, boolean useCapture)
此方法允许在事件目标上注册事件侦听器。 如果在处理事件时将EventListener
添加到EventTarget
,则它不会被当前操作触发,但可能在事件流的后续阶段(例如冒泡阶段)触发。
如果多个相同的EventListener
在具有相同参数的同一EventTarget
上注册,则丢弃重复实例。 它们不会导致EventListener
被调用两次,因为它们被丢弃,所以不需要使用removeEventListener
方法将其删除。- 参数
-
type
- 用户正在注册的事件类型 -
listener
-listener
参数采用用户实现的接口,该接口包含事件发生时要调用的方法。 -
useCapture
- 如果为true,则useCapture
指示用户希望启动捕获。 启动捕获后,指定类型的所有事件将被分派到已注册的EventListener
然后再分派到树中它们下面的任何EventTargets
。 向上冒泡树的事件不会触发指定使用捕获的EventListener
。
-
removeEventListener
void removeEventListener(String type, EventListener listener, boolean useCapture)
此方法允许从事件目标中删除事件侦听器。 如果EventTarget
在处理事件时从EventListener
中删除,则当前操作不会触发它。 删除后永远不能调用EventListener
。
调用removeEventListener
与不识别任何当前注册参数EventListener
对EventTarget
没有任何影响。- 参数
-
type
- 指定要删除的EventListener
的事件类型。 -
listener
-EventListener
参数指示要删除的EventListener
。 -
useCapture
- 指定要删除的EventListener
是否已注册为捕获侦听器。 如果一个监听器被注册了两次,一个有捕获,一个没有,每个都必须单独删除。 删除捕获侦听器不会影响同一侦听器的非捕获版本,反之亦然。
-
dispatchEvent
boolean dispatchEvent(Event evt) throws EventException
此方法允许将事件分派到实现事件模型中。 以这种方式分派的事件将具有与实现直接分派的事件相同的捕获和冒泡行为。 该事件的目标是EventTarget
上dispatchEvent
被调用。- 参数
-
evt
- 指定要在处理事件时使用的事件类型,行为和上下文信息。 - 结果
- 返回值
dispatchEvent
指示是否有任何处理该事件的侦听器称为preventDefault
。 如果调用了preventDefault
,则值为false,否则值为true。 - 异常
-
EventException
-EventException
:如果在Event
之前初始化事件未指定Event
的类型,则dispatchEvent
。 规范Event
的类型为null
或空字符串也会触发此异常。
-
-