JavaTM Platform
Standard Ed. 6

org.w3c.dom.events
インタフェース EventTarget


public interface EventTarget

EventTargetインタフェースは、DOM イベントモデルをサポートする実装では、すべての Nodeによって実装されます。そのため、Nodeインタフェースのインスタンスでバインディングに特有のキャストメソッドを使用して、このインタフェースを取得できます。このインタフェースでは、EventTargetEventListenersを登録、削除したり、EventTarget にイベントをディスパッチしたりできます。 

「Document Object Model (DOM) Level 2 Events Specification」も参照してください。

導入されたバージョン:
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)
このメソッドでは、イベントターゲットにイベントリスナーを登録できます。イベント処理中に EventTargetEventListenerを追加した場合、現在のアクションではトリガーされませんが、バブルフェーズなど、イベントフローのあとの段階ではトリガーされる場合があります。
複数の同じ EventListenerが同じパラメータを持って同じ EventTargetに登録されている場合は、重複するインスタンスが破棄されます。これによって、EventListenerが 2度呼び出されることはありません。 重複するインスタンスは破棄されるため、removeEventListenerメソッドで削除する必要はありません。

パラメータ:
type - ユーザーが登録しているイベントの型
listener - listener パラメータは、イベントの発生時に呼び出されるメソッドを含み、 ユーザーによって実装されるインタフェースを 指定する
useCapture - true の場合、ユーザーがキャプチャーを開始したいことを useCapture が示す。指定された型のすべてのイベントは、 キャプチャーを開始したあと、ツリーの下部にある EventTargets にディスパッチされる前に、登録された EventListener にディスパッチされる。ツリーを介して 上方へ向かってバブルしているイベントは、 キャプチャーに使用するために指定した EventListener をトリガーしない

removeEventListener

void removeEventListener(String type,
                         EventListener listener,
                         boolean useCapture)
このメソッドでは、イベントターゲットからイベントリスナーを削除できます。イベント処理中に EventTargetから EventListenerを削除する場合、現在のアクションではトリガーされません。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 または空の文字列に指定しても、 この例外がトリガーされる

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。