public interface EventTarget
EventTarget
インタフェースは、DOMイベント・モデルをサポートする実装では、すべてのNodes
によって実装されます。 そのため、このインタフェースは、Node
インタフェースのインスタンスに対してバインディング固有のキャスト・メソッドを使用して取得できます。 このインタフェースでは、EventTarget
へのEventListeners
の登録と削除、およびそのEventTarget
へのイベントのディスパッチが可能になります。
「Document Object Model (DOM) Level 2 Events Specification」も参照してください。
- 導入されたバージョン:
- 1.5、DOMレベル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
が2回呼び出されることはなく、またこれらは破棄されるため、removeEventListener
メソッドを使用して削除する必要はありません。- パラメータ:
type
- ユーザーが登録しているイベントの型listener
-listener
パラメータには、イベントが発生したときに呼び出されるメソッドを含む、ユーザーによって実装されたインタフェースを指定する。useCapture
- trueの場合、useCapture
はユーザーがキャプチャを開始することを示す。 キャプチャを開始したあとは、指定された型のすべてのイベントが、ツリー内で自身の下にあるEventTargets
にディスパッチされる前に、登録されたEventListener
にディスパッチされる。 ツリーを介して上方へ向かってバブルしているイベントは、キャプチャを使用するように指定されたEventListener
をトリガーしない。
-
removeEventListener
void removeEventListener(String type, EventListener listener, boolean useCapture)このメソッドでは、イベント・ターゲットからイベント・リスナーを削除できます。EventListener
は、イベント処理中にEventTarget
から削除された場合、現在のアクションによってはトリガーされません。EventListener
を、削除されたあとに呼び出すことはできません。
現在EventTarget
に登録されているどのEventListener
も識別しない引数でremoveEventListener
を呼び出しても効果はありません。- パラメータ:
type
- 削除されるEventListener
のイベントの型を指定する。listener
-EventListener
パラメータは削除されるEventListener
を示す。useCapture
- 削除されるEventListener
がキャプチャ・リスナーとして登録されたかどうかを指定する。 リスナーを2回登録した場合、1回はキャプチャとして、もう1回はキャプチャとしてではなく登録したのであれば、それぞれのリスナーを別々に削除しなければならない。 また、そのような場合、キャプチャ・リスナーを削除しても、非キャプチャ・リスナーには影響が及ばない。その逆の削除でも同様である。
-
dispatchEvent
boolean dispatchEvent(Event evt) throws EventExceptionこのメソッドでは、実装イベント・モデルにイベントをディスパッチできます。 このようにディスパッチされたイベントは、実装によって直接ディスパッチされたイベントと同じようにキャプチャとバブリングを実行します。 イベントのターゲットは、dispatchEvent
が呼び出されるEventTarget
です。- パラメータ:
evt
- イベントの処理で使用されるイベントの型、動作、およびコンテキスト情報を指定する。- 戻り値:
dispatchEvent
の戻り値は、イベントを処理したいずれかのリスナーがpreventDefault
を呼び出したかどうか示す。preventDefault
が呼び出された場合、この値はfalse。それ以外の場合、この値はtrue。- 例外:
EventException
- UNSPECIFIED_EVENT_TYPE_ERR:dispatchEvent
が呼び出される前に、イベントを初期化することによってEvent
の型が指定されなかった場合に発生します。Event
の型をnull
または空の文字列として指定した場合も、この例外がトリガーされます。
-