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