標準情報(TR)    TR X 0060:2003


文書オブジェクトモデル(DOM)水準2 イベント規定

Document Object Model (DOM) Level 2 Events Specification



序文

この標準情報(TR)は,2000年11月にWorld Wide Web Consortium(W3C)から公表された Document Object Model (DOM) Level 2 Events Specification, version 1.0 勧告を翻訳し, 技術的内容を変更することなく作成した標準情報(TR)である。


0. 適用範囲

この標準情報(TR)は, プログラム及びスクリプトに共通のイベントシステムを与える, プラットフォーム中立で言語中立なインタフェースである文書オブジェクトモデル水準2イベントを規定する。文書オブジェクトモデル水準2イベントは, 文書オブジェクトモデル水準2コア[DOM Level 2 Core]及び文書オブジェクトモデル水準2ビュー[DOM Level 2 Views]の上に構築される。

1. 文書オブジェクトモデルイベント
1. Document Object Model Events

1.1 DOM水準2イベントモデルの概要
1.1. Overview of the DOM Level 2 Event Model

DOM水準2イベントモデルは,二つの主たる目的をもって設計されている。第1の目的は,イベントハンドラの登録を可能とし,木構造を通じてイベントフローを記述し,各イベントに対する基本的な文脈情報を提供する包括的イベントシステムを設計することとする。さらにこの規定は,利用者インタフェース制御及び文書変異通知のためのイベントの標準的なモジュールを提供する。ここで,文書変異通知には,各イベントモジュールに対して定義された文脈情報が含まれる。

The DOM Level 2 Event Model is designed with two main goals. The first goal is the design of a generic event system which allows registration of event handlers, describes event flow through a tree structure, and provides basic contextual information for each event. Additionally, the specification will provide standard modules of events for user interface control and document mutation notifications, including defined contextual information for each of these event modules.

イベントモデルの第2の目的は,DOM水準0ブラウザで使用される現在のイベントシステムの共通の部分集合を提供することとする。これは,既存のスクリプト及び内容の相互運用性を促進することを意図している。この目的は,完全な後方互換性を満たすことは期待していない。しかし,この規定は,可能な場合には,この互換性の達成を試みる。

The second goal of the event model is to provide a common subset of the current event systems used in DOM Level 0 browsers. This is intended to foster interoperability of existing scripts and content. It is not expected that this goal will be met with full backwards compatibility. However, the specification attempts to achieve this when possible.

イベントモデル規定の以下の節で,DOMイベントモデルのための規定及びそのモデル内で使用するために設計された多くの適合イベントモデルの両方を定義する。イベントモデルは,イベント伝達及びイベントリスナ登録の二つの節,並びにイベントインタフェースから構成される。

The following sections of the Event Model specification define both the specification for the DOM Event Model and a number of conformant event modules designed for use within the model. The Event Model consists of the two sections on event propagation and event listener registration and the Event interface.

DOMアプリケーションは,イベントモジュールが実装によってサポートされるのかどうかを決定するために,DOMImplementationインタフェースのhasFeature(feature, version)メソッドのパラメタ値をそれぞれ"Events"及び"2.0"として使用してもよい。このモジュールを完全にサポートするためには,実装は,DOM水準2コア規定[DOM水準2コア]で定義される"コア"機能もサポートしなければならない。DOM水準2コア規定[DOM水準2コア]の適合性についての追加情報を参照すること。

A DOM application may use the hasFeature(feature, version) method of the DOMImplementation interface with parameter values "Events" and "2.0" (respectively) to determine whether or not the event module is supported by the implementation. In order to fully support this module, an implementation must also support the "Core" feature defined in the DOM Level 2 Core specification [DOM Level 2 Core]. Please, refer to additional information about conformance in the DOM Level 2 Core specification [DOM Level 2 Core].

各イベントモジュールは,イベントモジュールの一覧化においてそれ自体の機能を表す文字列を示す。

Each event module describes its own feature string in the event module listing.

1.1.1 定義
1.1.1. Terminology

UIイベント
UI events
利用者インタフェースイベント。このイベントは,(マウス,キーボードなどの)外部装置を通じた利用者との相互作用によって生成される。
User interface events. These events are generated by user interaction through an external device (mouse, keyboard, etc.)
UI論理イベント
UI Logical events
注目点変更メッセージ,要素誘発通知などの装置独立利用者インタフェースイベント。
Device independent user interface events such as focus change messages or element triggering notifications.
変異イベント
Mutation events
文書の構造を修正するあらゆる動作が引き起こすイベント。
Events caused by any action which modifies the structure of the document.
捕獲
Capturing
イベントのターゲットが扱う前に,イベントのターゲットの先祖の一つがそのイベントを扱うことができるようにする処理。
The process by which an event can be handled by one of the event's target's ancestors before being handled by the event's target.
バブル動作
Bubbling
イベントのターゲットがイベントを扱った後に,そのイベントが,その先祖を通じて上方に伝わる処理。
The process by which an event propagates upward through its ancestors after being handled by the event's target.
取消し可能な
Cancelable
クライアントが,イベントを扱う際に,DOM実装に対してそのイベントと関連するデフォルト動作の処理を禁止することを選択してもよい,とするイベントのための指示。
A designation for events which indicates that upon handling the event the client may choose to prevent the DOM implementation from processing any default action associated with the event.

1.2 イベントフローの記述
1.2. Description of event flow

イベントフローは,イベントがDOM実装から発生し文書オブジェクトモデルへと渡される一連の処理とする。イベント捕獲及びイベントバブル動作のメソッドは,様々なイベントリスナ登録技術と一緒にすることで,イベントがその後に多くの方法で扱われることを可能にする。イベントは,局所的にはそのEventTargetの準位で,集中(管理)的には文書木のより高位のEventTargetから,扱うことができる。

Event flow is the process through which the an event originates from the DOM implementation and is passed into the Document Object Model. The methods of event capture and event bubbling, along with various event listener registration techniques, allow the event to then be handled in a number of ways. It can be handled locally at the EventTarget level or centrally from an EventTarget higher in the document tree.

1.2.1 基本イベントフロー
1.2.1. Basic event flow

各イベントは,DOM実装によって示されるEventTargetをもつ。このEventTargetは,Eventtarget属性で指定される。イベントがターゲットに到達すると,EventTarget上に登録されたイベントリスナが誘発される。EventTarget上のすべてのEventListenersが,そのEventTargetが受信するあらゆるイベントによって誘発されると保証されているが,そのEventTarget上の他のEventListenersに関しそのイベントを受信する順番については指定されない。イベント捕獲もイベントバブル動作もその特定のイベントに対して使用されてない場合には,イベントフロー処理は,すべてのリスナが誘発された後で完了する。イベント捕獲又はイベントバブル動作が使用されている場合には,イベントフローは,以下の節で示されるとおりに修正される。

Each event has an EventTarget toward which the event is directed by the DOM implementation. This EventTarget is specified in the Event's target attribute. When the event reaches the target, any event listeners registered on the EventTarget are triggered. Although all EventListeners on the EventTarget are guaranteed to be triggered by any event which is received by that EventTarget, no specification is made as to the order in which they will receive the event with regards to the other EventListeners on the EventTarget. If neither event capture or event bubbling are in use for that particular event, the event flow process will complete after all listeners have been triggered. If event capture or event bubbling is in use, the event flow will be modified as described in the sections below.

EventListenerの内部で投げられる例外は,イベントの伝達を停止しない。それ(イベント)は,この規定が示す方法で,付加的なEventListenerを処理しつづける。

Any exceptions thrown inside an EventListener will not stop propagation of the event. It will continue processing any additional EventListener in the described manner.

EventListenerが行う動作が,付加的なイベントの発火を引き起こすかもしれないと予想される。付加的なイベントは,同期的な方法で扱われることが望ましく,イベントモデルへの再入を引き起こしてもよい。

It is expected that actions taken by EventListeners may cause additional events to fire. Additional events should be handled in a synchronous manner and may cause reentrancy into the event model.

1.2.2 イベント捕獲
1.2.2. Event capture

イベント捕獲は,イベントのターゲットの先祖において登録されたEventListenerが,与えられた型のイベントを,イベントのターゲットが受信する前に解釈できるような処理とする。木の最上位,一般的にはDocument,から下方に機能する。これは,1.2.3で示すバブル動作とは対称的反対になっている。木の最上位からイベントのターゲットまでのEventTargetの連鎖は,イベントの初期の送付けの前に決定される。イベント処理中に木に修正が発生する場合には,イベントフローは,木の初期状態に基づいて処理される。

Event capture is the process by which an EventListener registered on an ancestor of the event's target can intercept events of a given type before they are received by the event's target. Capture operates from the top of the tree, generally the Document, downward, making it the symmetrical opposite of bubbling which is described below. The chain of EventTargets from the top of the tree to the event's target is determined before the initial dispatch of the event. If modifications occur to the tree during event processing, event flow will proceed based on the initial state of the tree.

EventTarget上に登録されているEventListenerは,addEventListenerメソッドのuseCaptureパラメタをtrueに指定することによって,そのEventListenerにイベントを捕獲させることを選択してもよい。この後,捕獲オブジェクトの子孫に向けて与えられた型のイベントを送り付ける場合には,そのイベントは,文書の最上位とイベントのターゲットとの間の直接につながっている線に存在する適切な型の捕獲イベントリスナを誘発する。この下方への伝達は,イベントのターゲットに到達するまで継続される。捕獲EventListenerは,それが登録されているEventTargetへ直接的に送り付けられたイベントによっては誘発されない。

An EventListener being registered on an EventTarget may choose to have that EventListener capture events by specifying the useCapture parameter of the addEventListener method to be true. Thereafter, when an event of the given type is dispatched toward a descendant of the capturing object, the event will trigger any capturing event listeners of the appropriate type which exist in the direct line between the top of the document and the event's target. This downward propagation continues until the event's target is reached. A capturing EventListener will not be triggered by events dispatched directly to the EventTarget upon which it is registered.

捕獲EventListenerがイベントの更なる処理を発生させたくない場合,EventインタフェースのstopProgagationメソッドを呼び出してもよい。これが,イベントの更なる送付けを禁止する。ただし,同じ階層準位に登録された付加的なEventListenersは,依然としてイベントを受信する。イベントのstopPropagationメソッドが一度呼び出されると,そのメソッドへの更なる呼出しは,付加的な効果をもたない。付加的な捕獲オブジェクトが存在しない場合であって,stopPropagationが呼び出された場合には,イベントは,ターゲットそれ自体における適切なEventListenersを誘発する。

If the capturing EventListener wishes to prevent further processing of the event from occurring it may call the stopProgagation method of the Event interface. This will prevent further dispatch of the event, although additional EventListeners registered at the same hierarchy level will still receive the event. Once an event's stopPropagation method has been called, further calls to that method have no additional effect. If no additional capturers exist and stopPropagation has not been called, the event triggers the appropriate EventListeners on the target itself.

イベント捕獲は,すべての関心ある主体が通知を受信したいターゲット上に直接にリスナを登録するという,委譲に基づくイベントモデルに類似しているが,二つの重要な点で異なっている。第1の点は,イベント捕獲は,捕獲EventTarget子孫に向けたイベントの途中捕獲だけを可能とする。捕獲オブジェクトの先祖兄弟又は兄弟の子孫へ向けたイベントの途中捕獲は,可能ではない。第2の点は,イベント捕獲は,単一のEventTargetに対しては指定されず,イベントの特定の型に対して指定されることとする。一度指定されれば,イベント捕獲は,捕獲オブジェクトの子孫のあらゆるものに向けた,指定された型のすべてのイベントを途中捕獲する。

Although event capture is similar to the delegation based event model in which all interested parties register their listeners directly on the target about which they wish to receive notifications, it is different in two important respects. First, event capture only allows interception of events which are targeted at descendants of the capturing EventTarget. It does not allow interception of events targeted to the capturer's ancestors, its siblings, or its sibling's descendants. Secondly, event capture is not specified for a single EventTarget, it is specified for a specific type of event. Once specified, event capture intercepts all events of the specified type targeted toward any of the capturer's descendants.

1.2.3 イベントバブル動作
1.2.3. Event bubbling

バブル動作として示されるイベントは,最初は,バブル動作していないイベントと同じイベントフローで処理される。イベントは,そのターゲットEventTargetに送り付けられ,そこで見出されるイベントリスナを誘発する。そのとき,バブル動作イベントは,EventTargetの親連鎖を上位の方向にたどり,それに続く各EventTarget上に登録されたイベントリスナに対して検査を行うことによって見出される付加的なイベントリスナを誘発する。この上方向の伝播は,Documentまでそれを含んで継続される。捕獲オブジェクトとして登録されたEventListenerは,この段階の作業中には誘発されない。イベントターゲットから木の最上位までのEventTargetの連鎖は,イベントの最初の送付けの前に決定される。イベント処理中に修正が木に対して発生した場合には,イベントフローは,木の初期状態に基づいて処理される。

Events which are designated as bubbling will initially proceed with the same event flow as non-bubbling events. The event is dispatched to its target EventTarget and any event listeners found there are triggered. Bubbling events will then trigger any additional event listeners found by following the EventTarget's parent chain upward, checking for any event listeners registered on each successive EventTarget. This upward propagation will continue up to and including the Document. EventListeners registered as capturers will not be triggered during this phase. The chain of EventTargets from the event target to the top of the tree is determined before the initial dispatch of the event. If modifications occur to the tree during event processing, event flow will proceed based on the initial state of the tree.

あらゆるイベントハンドラは,EventインタフェースのstopPropagationメソッドを呼び出すことによって更なるイベント伝播を禁止することを選択してもよい。EventListenerがこのメソッドを呼び出す場合,現在のEventTarget上のすべての付加的なEventListenersが誘発されるが,バブル動作はその段階では止まる。更なるバブル動作を防ぐためには,stopPropagationへの呼出しが1回だけ要求される。

Any event handler may choose to prevent further event propagation by calling the stopPropagation method of the Event interface. If any EventListener calls this method, all additional EventListeners on the current EventTarget will be triggered but bubbling will cease at that level. Only one call to stopPropagation is required to prevent further bubbling.

1.2.4 イベント取消し
1.2.4. Event cancelation

取消し可能として指定されるイベントもある。これらイベントに対して,DOM実装は,一般に,そのイベントに関連したデフォルトの動作をもつ。この例には,ウェブブラウザにおけるハイパリンクがある。利用者がハイパリンク上でクリックする場合,一般に,そのデフォルト動作は,そのハイパリンクを活性化することである。これらイベントを処理する前に,実装は,イベント受け取るために登録されたイベントリスナに対して検査を行い,イベントをそれらイベントリスナに送り付けなければならない。これらリスナは,実装のデフォルト動作を取り消す又はデフォルト動作を実行可能にするオプションをもつ。ブラウザのハイパリンクの場合には,動作を取り消すとは,ハイパリンクを活性化しない結果をもつこととする。

Some events are specified as cancelable. For these events, the DOM implementation generally has a default action associated with the event. An example of this is a hyperlink in a web browser. When the user clicks on the hyperlink the default action is generally to active that hyperlink. Before processing these events, the implementation must check for event listeners registered to receive the event and dispatch the event to those listeners. These listeners then have the option of canceling the implementation's default action or allowing the default action to proceed. In the case of the hyperlink in the browser, canceling the action would have the result of not activating the hyperlink.

取消しは,EventpreventDefaultメソッドを呼び出すことによって達成される。一つ以上のEventListenersがイベントフローの任意の段階中にpreventDefaultを呼び出す場合,デフォルト動作は取り消される。

Cancelation is accomplished by calling the Event's preventDefault method. If one or more EventListeners call preventDefault during any phase of event flow the default action will be canceled.

異なる実装は,存在する場合には,各イベントに関連するその実装自体の動作を指定する。DOMは,これら動作を規定しようとはしない。

Different implementations will specify their own default actions, if any, associated with each event. The DOM does not attempt to specify these actions.

1.3 イベントリスナ登録
1.3. Event listener registration

1.3.1 イベント登録インタフェース
1.3.1. Event registration interfaces

インタフェース EventTarget (DOM水準2で導入)
Interface EventTarget (introduced in DOM Level 2)

EventTargetインタフェースは,DOMイベントモデルをサポートする実装におけるすべてのNodeによって実装される。そのために,このインタフェースは,Nodeインタフェースのインスタンス上の束縛固有のキャスト化メソッドを使用することによって取得可能とする。インタフェースは,EventTarget上のEventListenersの登録及び除去,並びにそのEventTargetへのイベントの送付けを可能にする。

The EventTarget interface is implemented by all Nodes in an implementation which supports the DOM Event Model. Therefore, this interface can be obtained by using binding-specific casting methods on an instance of the Node interface. The interface allows registration and removal of EventListeners on an EventTarget and dispatch of events to that EventTarget.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface EventTarget {
  void               addEventListener(in DOMString type, 
                                      in EventListener listener, 
                                      in boolean useCapture);
  void               removeEventListener(in DOMString type, 
                                         in EventListener listener, 
                                         in boolean useCapture);
  boolean            dispatchEvent(in Event evt)
                                        raises(EventException);
};

メソッド
Methods
addEventListener
このメソッドは,イベントターゲット上へのイベントリスナの登録を可能にする。EventListenerが,イベントを処理中に,EventTargetに追加される場合には,現在の動作ではそのEventListenerは誘発されないが,バブル動作の段階などのイベントフローの後の段階中で誘発されてもよい。
複数の同等なEventListenerが同じEventTarget上に同じパラメタをもって登録される場合,重複するインスタンスは破棄される。それらは,EventListenerの2回の呼出しを引き起こさず,破棄されるので,removeEventListenerメソッドを使って取り除く必要はない。
This method allows the registration of event listeners on the event target. If an EventListener is added to an EventTarget while it is processing an event, it will not be triggered by the current actions but may be triggered during a later stage of event flow, such as the bubbling phase.
If multiple identical EventListeners are registered on the same EventTarget with the same parameters the duplicate instances are discarded. They do not cause the EventListener to be called twice and since they are discarded they do not need to be removed with the removeEventListener method.
パラメタ
Parameters
DOMStringtype
type of type DOMString
利用者が登録しているイベント型。
The event type for which the user is registering
EventListenerlistener
listener of type EventListener
listenerパラメタは,イベントが発生したときに呼び出されるメソッドを含む,利用者が実装するインタフェースをとる。
The listener parameter takes an interface implemented by the user which contains the methods to be called when the event occurs.
booleanuseCapture
useCapture of type boolean
真の場合,useCaptureは,利用者が捕獲を開始したいことを示す。捕獲の開始後,指定された型のすべてのイベントが,木の下の方のEventTargetに送り付けられる前に,登録されたEventListenerに送り付けられる。木を通して上方向にバブル動作するイベントは,捕獲を使用すると指定されたEventListenerを誘発しない。
If true, useCapture indicates that the user wishes to initiate capture. After initiating capture, all events of the specified type will be dispatched to the registered EventListener before being dispatched to any EventTargets beneath them in the tree. Events which are bubbling upward through the tree will not trigger an EventListener designated to use capture.
返却値なし
No Return Value
例外なし
No Exceptions
dispatchEvent
このメソッドは,実装のイベントモデルへのイベントの送付けを可能にする。この方法で送り付けられたイベントは,実装によって直接に送り付けられたイベントと同じ捕獲及びバブル動作の振る舞いをする。イベントのターゲットは,dispatchEventが呼び出される場所のEventTargetとする。
This method allows the dispatch of events into the implementations event model. Events dispatched in this manner will have the same capturing and bubbling behavior as events dispatched directly by the implementation. The target of the event is the EventTarget on which dispatchEvent is called.
パラメタ
Parameters
Eventevt
evt of type Event
イベントの処理で使用する,イベント型,振る舞い及び文脈情報を指定する。
Specifies the event type, behavior, and contextual information to be used in processing the event.
返却値
Return Value

boolean  

dispatchEventの返却値は,イベントを取り扱うリスナがpreventDefaultを呼び出したかどうかを示す。preventDefaultが呼び出された場合には,値は偽とする。そうでない場合には,真とする。

The return value of dispatchEvent indicates whether any of the listeners which handled the event called preventDefault. If preventDefault was called the value is false, else the value is true.

例外
Exceptions

EventException  

UNSPECIFIED_EVENT_TYPE_ERR: dispatchEventが呼び出される前に,Eventの型がイベントを初期化することによって指定されなかった場合に,挙げられる。Eventの型をnull又は空文字列として指定しても,この例外が誘発される。

UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event's type was not specified by initializing the event before dispatchEvent was called. Specification of the Event's type as null or an empty string will also trigger this exception.

removeEventListener
このメソッドは,イベントターゲットからのイベントリスナの除去を可能にする。EventListenerが,イベントを処理中に,EventTargetから取り除かれる場合には,EventListenerは現在の動作によって誘発されない。取り除かれた後は,EventListenerは決して起動されない。
EventTarget上に現在登録されているEventListenerを同定しない引数でremoveEventListenerを呼び出しても何の影響も生じない。
This method allows the removal of event listeners from the event target. If an EventListener is removed from an EventTarget while it is processing an event, it will not be triggered by the current actions. EventListeners can never be invoked after being removed.
Calling removeEventListener with arguments which do not identify any currently registered EventListener on the EventTarget has no effect.
パラメタ
Parameters
DOMStringtype
type of type DOMString
取り除かれるEventListenerのイベント型を指定する。
Specifies the event type of the EventListener being removed.
EventListenerlistener
listener of type EventListener
EventListenerパラメタは,取り除かれるEventListenerを示す。
The EventListener parameter indicates the EventListener to be removed.
booleanuseCapture
useCapture of type boolean
取り除かれるEventListenerが捕獲リスナとして登録されていたかどうかを指定する。リスナが,捕獲リスナとして1回及び非捕獲リスナとして1回,合わせて2回登録されていた場合には,それぞれを別々に取り除かなければならない。捕獲リスナの除去は,同じリスナの非捕獲リスナの版には影響を与えない。非捕獲リスナの除去<も,捕獲リスナの版には影響を与えない。
Specifies whether the EventListener being removed was registered as a capturing listener or not. If a listener was registered twice, one with capture and one without, each must be removed separately. Removal of a capturing listener does not affect a non-capturing version of the same listener, and vice versa.
返却値なし
No Return Value
例外なし
No Exceptions

インタフェース EventListener (DOM水準2で導入)
Interface EventListener (introduced in DOM Level 2)

EventListenerインタフェースは,イベントを取り扱う基本的なメソッドとする。利用者は,EventListenerインタフェースを実装し,AddEventListenerメソッドを使用してEventTarget上に彼らのリスナを登録する。さらに,利用者は,リスナの使用が完了した後には,EventTargetから彼らのEventListenerを取り除くことが望ましい。

The EventListener interface is the primary method for handling events. Users implement the EventListener interface and register their listener on an EventTarget using the AddEventListener method. The users should also remove their EventListener from its EventTarget after they have completed using the listener.

NodecloneNodeメソッドを使用してコピーされる場合,コピー元のNodeに添付されたEventListenerは,コピーされたNodeに添付されない。利用者が新しく生成されたコピーに同じEventListenerを追加したい場合には,それらを別途追加しなければならない。

When a Node is copied using the cloneNode method the EventListeners attached to the source Node are not attached to the copied Node. If the user wishes the same EventListeners to be added to the newly created copy the user must add them manually.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface EventListener {
  void               handleEvent(in Event evt);
};

メソッド
Methods
handleEvent
このメソッドは,EventListenerインタフェースが登録された型のイベントが発生するときにはいつでも呼び出される。
This method is called whenever an event occurs of the type for which the EventListener interface was registered.
パラメタ
Parameters
Eventevt
evt of type Event
Eventは,イベントについての文脈情報を含む。それは,イベントのフロー及びデフォルト動作を決定する際に使用するstopPropagationメソッド及びpreventDefaultメソッドも含む。
The Event contains contextual information about the event. It also contains the stopPropagation and preventDefault methods which are used in determining the event's flow and default action.
返却値なし
No Return Value
例外なし
No Exceptions

1.3.2 HTML 4.0イベントリスナとの相互作用
1.3.2. Interaction with HTML 4.0 event listeners

HTML 4.0では,イベントリスナは,要素の属性として指定された。そのために,同じ型の2番目のイベントリスナの登録は,最初のリスナを置き換える。DOMイベントモデルは,一つのEventTarget上に複数のイベントリスナを登録することを可能にする。これを達成するために,イベントリスナは,もはや属性としては記憶されない。

In HTML 4.0, event listeners were specified as attributes of an element. As such, registration of a second event listener of the same type would replace the first listener. The DOM Event Model allows registration of multiple event listeners on a single EventTarget. To achieve this, event listeners are no longer stored as attribute values.

HTML 4.0との互換性を達成するために,実装者は,イベントハンドラを表現する属性の設定をEventTarget上のEventListenerの生成及び登録として見なしてよい。useCaptureの値は,デフォルトでfalseとする。このEventListenerは,EventTarget上に登録されてよい他のEventListenerと同じに振る舞う。イベントリスナを表現する属性が変更される場合には,これは,以前に登録されたEventListenerが取り除かれ新しいものが登録されると見なしてよい。HTML 4.0イベントリスナが各イベントに対して定義された文脈情報にアクセスできるようにする技術は,提供されない。

In order to achieve compatibility with HTML 4.0, implementors may view the setting of attributes which represent event handlers as the creation and registration of an EventListener on the EventTarget. The value of useCapture defaults to false. This EventListener behaves in the same manner as any other EventListeners which may be registered on the EventTarget. If the attribute representing the event listener is changed, this may be viewed as the removal of the previously registered EventListener and the registration of a new one. No technique is provided to allow HTML 4.0 event listeners access to the context information defined for each event.

1.4 Eventインタフェース
1.4. Event interface

インタフェース Event (DOM水準2で導入)
Interface Event (introduced in DOM Level 2)

Eventインタフェースは,イベントを処理するハンドラに,イベントについての文脈情報を提供するために使用する。Eventインタフェースを実装するオブジェクトは,一般に,イベントハンドラに対して最初のパラメタとして渡される。より特定的な文脈情報は,付随するイベント型に直接に関係する情報を含む付加的なインタフェースをEventから派生させることによって,イベントハンドラに渡される。これら派生されたインタフェースも,イベントリスナに渡されるオブジェクトによって実装される。

The Event interface is used to provide contextual information about an event to the handler processing the event. An object which implements the Event interface is generally passed as the first parameter to an event handler. More specific context information is passed to event handlers by deriving additional interfaces from Event which contain information directly relating to the type of event they accompany. These derived interfaces are also implemented by the object passed to the event listener.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface Event {

  // PhaseType
  const unsigned short      CAPTURING_PHASE                = 1;
  const unsigned short      AT_TARGET                      = 2;
  const unsigned short      BUBBLING_PHASE                 = 3;

  readonly attribute DOMString        type;
  readonly attribute EventTarget      target;
  readonly attribute EventTarget      currentTarget;
  readonly attribute unsigned short   eventPhase;
  readonly attribute boolean          bubbles;
  readonly attribute boolean          cancelable;
  readonly attribute DOMTimeStamp     timeStamp;
  void               stopPropagation();
  void               preventDefault();
  void               initEvent(in DOMString eventTypeArg, 
                               in boolean canBubbleArg, 
                               in boolean cancelableArg);
};

定義グループ PhaseType
Definition group PhaseType

イベントフローのどの段階を処理中かを示す整数。

An integer indicating which phase of event flow is being processed.

定義済み定数
Defined Constants
AT_TARGET
イベントは,現在,ターゲットEventTargetで評価されている。
The event is currently being evaluated at the target EventTarget.
BUBBLING_PHASE
現在のイベント段階は,バブル動作段階になっている。
The current event phase is the bubbling phase.
CAPTURING_PHASE
現在のイベント段階は,捕獲段階になっている。
The current event phase is the capturing phase.
属性
Attributes
booleanbubbles,読取り専用
bubbles of type boolean, readonly
イベントがバブル動作イベントかどうかを示すために使用する。イベントがバブル動作可能な場合には,値は真とする。そうでない場合には,値は偽とする。
Used to indicate whether or not an event is a bubbling event. If the event can bubble the value is true, else the value is false.
booleancancelable,読取り専用
cancelable of type boolean, readonly
イベントがそのデフォルト動作を起こさないようにできるかどうかを示すために使用する。デフォルト動作を起こさないことが可能な場合には,値は真とする。そうでない場合には,値は偽とする。
Used to indicate whether or not an event can have its default action prevented. If the default action can be prevented the value is true, else the value is false.
EventTargetcurrentTarget,読取り専用
currentTarget of type EventTarget, readonly
そのEventListenerが現在処理中であるEventTargetを示すために使用する。これは,捕獲及びバブル動作の最中に特に役に立つ。
Used to indicate the EventTarget whose EventListeners are currently being processed. This is particularly useful during capturing and bubbling.
unsigned shorteventPhase,読取り専用
eventPhase of type unsigned short, readonly
イベントフローのどの段階が現在評価されているかを示すために使用する。
Used to indicate which phase of event flow is currently being evaluated.
EventTargettarget,読取り専用
target of type EventTarget, readonly
イベントが最初に送り付けられたEventTargetを示すために使用する。
Used to indicate the EventTarget to which the event was originally dispatched.
DOMTimeStamptimeStamp,読取り専用
timeStamp of type DOMTimeStamp, readonly
イベントが生成された時間を(その基準時点に相対的なミリ秒単位で)指定するために使用する。この情報を提要しないシステムが存在してもよいという事実のために,timeStampの値は,すべてのイベントに対して利用可能でなくともよい。利用可能でない場合には,値0が返される。基準時点の例としては,システムの開始時間又は1970年1月1日0:0:0 UTC(世界協定時)がある。
Used to specify the time (in milliseconds relative to the epoch) at which the event was created. Due to the fact that some systems may not provide this information the value of timeStamp may be not available for all events. When not available, a value of 0 will be returned. Examples of epoch time are the time of the system start or 0:0:0 UTC 1st January 1970.
DOMStringtype,読取り専用
type of type DOMString, readonly
イベントの(大文字・小文字を区別しない)名前。名前は,XMLの名前 でなければならない。
The name of the event (case-insensitive). The name must be an XML name.
メソッド
Methods
initEvent
initEventメソッドは,DocumentEventインタフェースを通じて生成されたEventの値を初期化するために使用する。このメソッドは,EventdispatchEventメソッドを経由して送り付けられる以前にだけ呼び出されてよい。ただし,必要ならば,その段階中に複数回呼び出されてもよい。複数回呼び出された場合には,最終の呼出しが優先される。Eventインタフェースの下位クラスから呼び出された場合には,initEventメソッドで指定された値だけが修正され,すべての他の属性は不変に保たれる。
The initEvent method is used to initialize the value of an Event created through the DocumentEvent interface. This method may only be called before the Event has been dispatched via the dispatchEvent method, though it may be called multiple times during that phase if necessary. If called multiple times the final invocation takes precedence. If called from a subclass of Event interface only the values specified in the initEvent method are modified, all other attributes are left unchanged.
パラメタ
Parameters
DOMStringeventTypeArg
eventTypeArg of type DOMString
イベント型を指定する。この型は,この規定で現在定義されているあらゆるイベント型又は新しいイベント型であってよい。その文字列は,XMLの名前 でなければならない。
新しいイベント型は,文字列"DOM"の大文字,小文字,又はそれらが混合したもので開始してはならない。この接頭辞は,将来のDOMイベント集合のために予約される。それ自体のイベントを追加する第3者団体は,混乱を避け他の新しいイベントとの衝突の可能性を少なくするために,それ自体の接頭辞を使用することを,強く推奨する。
Specifies the event type. This type may be any event type currently defined in this specification or a new event type.. The string must be an XML name.
Any new event type must not begin with any upper, lower, or mixed case version of the string "DOM". This prefix is reserved for future DOM event sets. It is also strongly recommended that third parties adding their own events use their own prefix to avoid confusion and lessen the probability of conflicts with other new events.
booleancanBubbleArg
canBubbleArg of type boolean
イベントがバブル動作可能かどうかを指定する。
Specifies whether or not the event can bubble.
booleancancelableArg
cancelableArg of type boolean
イベントのデフォルト動作が起こらないようにできるかどうかを指定する。
Specifies whether or not the event's default action can be prevented.
返却値なし
No Return Value
例外なし
No Exceptions
preventDefault
イベントが取消し可能な場合,そのイベントを取り消すことが望ましいことを示すためにpreventDefaultメソッドを使用する。これは,そのイベントの結果としての実装がとる通常のデフォルト動作が発生しないことを意味する。イベントフローの段階中に,preventDefaultメソッドが呼び出される場合には,そのイベントは取り消される。イベントに関連するいかなるデフォルト動作も発生しない。取消し可能ではないイベントに対してこのメソッドを呼び出した場合には,何の影響もない。一度preventDefaultが呼び出されると,そのイベントの伝播の残りを通じて効果が持続する。このメソッドは,イベントフローのあらゆる段階中で使用してよい。
If an event is cancelable, the preventDefault method is used to signify that the event is to be canceled, meaning any default action normally taken by the implementation as a result of the event will not occur. If, during any stage of event flow, the preventDefault method is called the event is canceled. Any default action associated with the event will not occur. Calling this method for a non-cancelable event has no effect. Once preventDefault has been called it will remain in effect throughout the remainder of the event's propagation. This method may be used during any stage of event flow.
パラメタなし
No Parameters
返却値なし
No Return Value
例外なし
No Exceptions
stopPropagation
stopPropagationメソッドは,イベントフロー中にイベントの更なる伝播を起こさないために使用する。このメソッドがEventListenerによって呼び出される場合には,イベントは木に沿っての伝播を止める。イベントは,イベントフローが停止する前に,現在のEventTarget上のすべてのリスナに完全に送り付けられる。このメソッドは,イベントフローのあらゆる段階中で使用してよい。
The stopPropagation method is used prevent further propagation of an event during event flow. If this method is called by any EventListener the event will cease propagating through the tree. The event will complete dispatch to all listeners on the current EventTarget before event flow stops. This method may be used during any stage of event flow.
パラメタなし
No Parameters
返却値なし
No Return Value
例外なし
No Exceptions
例外 EventException (DOM水準2で導入)
Exception EventException introduced in DOM Level 2

イベント操作は,そのメソッド記述で指定されたとおりのEventExceptionを投げてよい。

Event operations may throw an EventException as specified in their method descriptions.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
exception EventException {
  unsigned short   code;
};
// EventExceptionCode
const unsigned short      UNSPECIFIED_EVENT_TYPE_ERR     = 0;

定義グループ EventExceptionCode
Definition group EventExceptionCode

生成されたエラーの型を示す整数。

An integer indicating the type of error generated.

定義済みの定数
Defined Constants
UNSPECIFIED_EVENT_TYPE_ERR
Eventの型が,メソッドが呼び出される前に,イベントを初期化することによって指定されていない場合。Eventの型をnull又は空文字列として指定しても,この例外が誘発される。
If the Event's type was not specified by initializing the event before the method was called. Specification of the Event's type as null or an empty string will also trigger this exception.

1.5 DocumentEventインタフェース
1.5. DocumentEvent interface

インタフェース DocumentEvent (DOM水準2で導入)
Interface DocumentEvent (introduced in DOM Level 2)

DocumentEventインタフェースは,利用者が実装によってサポートされる型のイベントを生成できる機構を提供する。DocumentEventインタフェースは,イベントモデルをサポートする実装においてDocumentインタフェースを実装する同じオブジェクト上で実装されることが期待される。

The DocumentEvent interface provides a mechanism by which the user can create an Event of a type supported by the implementation. It is expected that the DocumentEvent interface will be implemented on the same object which implements the Document interface in an implementation which supports the Event model.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface DocumentEvent {
  Event              createEvent(in DOMString eventType)
                                        raises(DOMException);
};

メソッド
Methods
createEvent
パラメタ
Parameters
DOMStringeventType
eventType of type DOMString
eventTypeパラメタは,生成されるEventインタフェースの型を指定する。指定されるEventインタフェースが実装によってサポートされる場合,このメソッドは,要求されるインタフェース型の新しいEventを返す。EventdispatchEventメソッド経由で送り付けられることになっている場合には,適切なイベント初期化(init)メソッドが,Eventの値を初期化するために生成した後で呼び出されなければならない。例えば,ある種のUIEventを同期化することを望む利用者は,パラメタ"UIEvents"をもつcreateEventを呼び出す。initUIEventメソッドは,送り付けられるUIEventの特定の型及びその文脈情報を設定するために新しく生成されたUIEvent上で呼び出されることができる。
createEventメソッドは,利用者がEventを生成することが不便又は不必要な場合,Eventを生成する際に使用される。Eventを提供する実装が不十分な場合,利用者が,dispatchEventメソッドともに使用するために彼ら自身のEvent実装を供給してもよい。
The eventType parameter specifies the type of Event interface to be created. If the Event interface specified is supported by the implementation this method will return a new Event of the interface type requested. If the Event is to be dispatched via the dispatchEvent method the appropriate event init method must be called after creation in order to initialize the Event's values. As an example, a user wishing to synthesize some kind of UIEvent would call createEvent with the parameter "UIEvents". The initUIEvent method could then be called on the newly created UIEvent to set the specific type of UIEvent to be dispatched and set its context information.
The createEvent method is used in creating Events when it is either inconvenient or unnecessary for the user to create an Event themselves. In cases where the implementation provided Event is insufficient, users may supply their own Event implementations for use with the dispatchEvent method.
返却値
Return Value

Event  

新しく生成されたEvent

The newly created Event

例外
Exceptions

DOMException  

NOT_SUPPORTED_ERR: 実装が要求されたEventインタフェースの型をサポートしない場合に,挙げられる。

NOT_SUPPORTED_ERR: Raised if the implementation does not support the type of Event interface requested

1.6 イベントモジュール定義
1.6. Event module definitions

DOM水準2イベントモデルは,DOM実装が,イベントの複数のモジュールをサポートすることを可能にする。モデルは,要求されたとおりに新しいイベントモジュールを追加できるように設計された。DOMは,すべての可能なイベントを定義しようとはしない。相互運用性のために,DOMは,より低位の装置依存イベントを含む利用者インタフェースイベントのモジュール,UI論理イベントのモジュール,及び文書変異イベントのモジュールを定義する。第3者団体が定義する新しいイベント型は,文字列"DOM"の大文字,小文字,又はそれらの混合で始まってはならない。この接頭辞は,将来のDOMイベントモジュールのために予約される。第3者団体がそれら自体のイベントを追加する場合にも,混乱を避け他の新しいイベントとの衝突の可能性を少なくするために,それら自体の接頭辞を使用することを,強く推奨する。

The DOM Level 2 Event Model allows a DOM implementation to support multiple modules of events. The model has been designed to allow addition of new event modules as is required. The DOM will not attempt to define all possible events. For purposes of interoperability, the DOM will define a module of user interface events including lower level device dependent events, a module of UI logical events, and a module of document mutation events. Any new event types defined by third parties must not begin with any upper, lower, or mixed case version of the string "DOM". This prefix is reserved for future DOM event modules. It is also strongly recommended that third parties adding their own events use their own prefix to avoid confusion and lessen the probability of conflicts with other new events.

1.6.1 利用者インタフェースイベント型
1.6.1. User Interface event types

利用者インタフェースイベントモジュールは,HTML 4.0で一覧として示されるイベント及びDOM水準0のブラウザでサポートされる付加的なイベントから構成される。

The User Interface event module is composed of events listed in HTML 4.0 and additional events which are supported in DOM Level 0 browsers.

DOMアプリケーションは,DOMImplementationインタフェースのhasFeature(feature, version)を,そのパラメタ値をそれぞれ"UIEvents"及び"2.0"として使用し,利用者インタフェースイベントモジュールが実装によってサポートされるかどうかを決定してよい。このモジュールを完全にサポートするためには,実装は,この規定で定義する"Events"機能及びDOM水準2のビュー規定[DOM Level 2 Views]で定義する"Views"機能をもサポートしなければならない。DOM水準2のコア規定[DOM Level 2 Core]における 適合性 についての追加情報を参照すること。

A DOM application may use the hasFeature(feature, version) method of the DOMImplementation interface with parameter values "UIEvents" and "2.0" (respectively) to determine whether or not the User Interface event module is supported by the implementation. In order to fully support this module, an implementation must also support the "Events" feature defined in this specification and the "Views" feature defined in the DOM Level 2 Views specification [DOM Level 2 Views]. Please, refer to additional information about conformance in the DOM Level 2 Core specification [DOM Level 2 Core].

備考  UIEventインタフェースのインスタンスを生成するためには,DocumentEventインタフェースのcreateEventメソッドで使用される入力パラメタの値として,機能を表す文字列"UIEvents"を使用すること。

Note: To create an instance of the UIEvent interface, use the feature string "UIEvents" as the value of the input parameter used with the createEvent method of the DocumentEvent interface.

インタフェース UIEvent (DOM水準2で導入)
Interface UIEvent (introduced in DOM Level 2)

UIEventインタフェースは,利用者インタフェースイベントに関連する特定の文脈情報を提供する。

The UIEvent interface provides specific contextual information associated with User Interface events.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface UIEvent : Event {
  readonly attribute views::AbstractView  view;
  readonly attribute long             detail;
  void               initUIEvent(in DOMString typeArg, 
                                 in boolean canBubbleArg, 
                                 in boolean cancelableArg, 
                                 in views::AbstractView viewArg, 
                                 in long detailArg);
};

属性
Attributes
longdetail,読取り専用
detail of type long, readonly
イベントの型に依存して,Eventについての詳細情報を指定する。
Specifies some detail information about the Event, depending on the type of event.
views::AbstractViewview,読取り専用
view of type views::AbstractView, readonly
view属性は,イベントが生成されたAbstractViewを識別する。
The view attribute identifies the AbstractView from which the event was generated.
メソッド
Methods
initUIEvent
initUIEventメソッドは,DocumentEventインタフェースを通じて生成されるUIEventの値を初期化するために使用する。このメソッドは,UIEventdispatchEventメソッド経由で送り付けられる前にだけ呼び出してよい。ただし,必要な場合には,その段階中に複数回呼び出してもよい。複数回呼び出される場合には,最後の起動が優先される。
The initUIEvent method is used to initialize the value of a UIEvent created through the DocumentEvent interface. This method may only be called before the UIEvent has been dispatched via the dispatchEvent method, though it may be called multiple times during that phase if necessary. If called multiple times, the final invocation takes precedence.
パラメタ
Parameters
DOMStringtypeArg
typeArg of type DOMString
イベント型を指定する。
Specifies the event type.
booleancanBubbleArg
canBubbleArg of type boolean
イベントがバブル動作可能かどうかを指定する。
Specifies whether or not the event can bubble.
booleancancelableArg
cancelableArg of type boolean
イベントのデフォルト動作を禁止可能かどうかを指定する。
Specifies whether or not the event's default action can be prevented.
views::AbstractViewviewArg
viewArg of type views::AbstractView
EventAbstractViewを指定する。
Specifies the Event's AbstractView.
longdetailArg
detailArg of type long
Eventの詳細を指定する。
Specifies the Event's detail.
返却値なし
No Return Value
例外なし
No Exceptions

発生可能なイベントの異なる型は,次による。

The different types of such events that can occur are:

DOMFocusIn(注目点合せ)
DOMFocusInイベントは,例えば,要素上に移動される指示装置経由で又は要素へのタブによるナビゲーションによって,EventTargetが注目点を受け取る場合に,発生する。HTMLのイベントの注目点合せとは異なり,DOMFocusInは,FORM制御だけでなくあらゆる注目点合せが可能なEventTargetに対して適用できる。
The DOMFocusIn event occurs when an EventTarget receives focus, for instance via a pointing device being moved onto an element or by tabbing navigation to the element. Unlike the HTML event focus, DOMFocusIn can be applied to any focusable EventTarget, not just FORM controls.
  • バブル動作:可
  • 取消し可能性:不可
  • 内容情報:なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
DOMFocusOut(注目点はずし)
DOMFocusOutイベントは,例えば,要素から離れ移動する指示装置経由で又は要素から離れるタブによるナビゲーションによって,EventTargetが注目点を失う場合に,発生する。HTMLのイベントの注目点ぼかしとは異なり,DOMFocusOutは,FORM制御だけでなくあらゆる注目点合せ可能なEventTargetに対して適用できる。
The DOMFocusOut event occurs when a EventTarget loses focus, for instance via a pointing device being moved out of an element or by tabbing navigation out of the element. Unlike the HTML event blur, DOMFocusOut can be applied to any focusable EventTarget, not just FORM controls.
  • バブル動作:可
  • 取消し可能性:不可
  • 内容情報:なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
DOMActivate(活性化)
活性化されたイベントは,例えば,マウスのクリック又は(キーボードの)キーの押込みを通して,要素が活性化される場合に,発生する。次の数値引数が,発生する活性化の型を示すために提供される。すなわち,(例えば,1回クリック又はEnterといった)単純な活性化に対しては,1を,(例えば,2回クリック又はShift Enterといった)高度な活性化に対しては,2を,与える。
The activate event occurs when an element is activated, for instance, thru a mouse click or a keypress. A numerical argument is provided to give an indication of the type of activation that occurs: 1 for a simple activation (e.g. a simple click or Enter), 2 for hyperactivation (for instance a double click or Shift Enter).
  • バブル動作:可
  • 取消し可能性:可
  • 内容情報:詳細(数値)
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: detail (the numerical value)

1.6.2 マウスイベント型
1.6.2. Mouse event types

マウスイベントモジュールは,HTML 4.0で一覧に示されたイベント及びDOM水準0ブラウザでサポートされる付加的なイベントから構成される。このイベントモジュールは,特に,マウス入力装置とともに使用するために設計されている。

The Mouse event module is composed of events listed in HTML 4.0 and additional events which are supported in DOM Level 0 browsers. This event module is specifically designed for use with mouse input devices.

DOMアプリケーションは,マウスイベントモジュールが実装によってサポートされているかどうかを決定するために,DOMImplementationインタフェースのhasFeature(feature, version)モジュールを,パラメタの値を(それぞれ)"MouseEvents"及び"2.0"として使用してもよい。このモジュールを完全にサポートするためには,実装は,この規定で定義される"UIEvents"機能もサポートしなければならない。DOM水準2コア規定[DOM Level 2 Core]における 適合性 についての追加情報を参照すること。

A DOM application may use the hasFeature(feature, version) method of the DOMImplementation interface with parameter values "MouseEvents" and "2.0" (respectively) to determine whether or not the Mouse event module is supported by the implementation. In order to fully support this module, an implementation must also support the "UIEvents" feature defined in this specification. Please, refer to additional information about conformance in the DOM Level 2 Core specification [DOM Level 2 Core].

備考  MouseEventインタフェースのインスタンスを生成するためには,DocumentEventインタフェースのcreateEventメソッドで使用される入力パラメタの値として,機能を表す文字列"MouseEvents"を使用すること。

Note: To create an instance of the MouseEvent interface, use the feature string "MouseEvents" as the value of the input parameter used with the createEvent method of the DocumentEvent interface.

インタフェース MouseEvent (DOM水準2で導入)
Interface MouseEvent (introduced in DOM Level 2)

MouseEventインタフェースは,マウスイベントと関連する特定の文脈情報を提供する。

The MouseEvent interface provides specific contextual information associated with Mouse events.

UIEventから継承されるdetail属性は,利用者の動作中に同じスクリーン位置上でマウスボタンが押されて解放された回数を示す。属性値は,利用者がこの動作を開始したときに1とし,押すこと及び解放することの完全な系列ごとに1ずつ増加する。利用者がマウスボタンを押し下げる動作と解放する動作との間にマウスを移動する場合には,その値は0と設定する。この0は,クリック(同じ位置でマウスボタンを押して解放する一連の動作)が発生していないことを示す。

The detail attribute inherited from UIEvent indicates the number of times a mouse button has been pressed and released over the same screen location during a user action. The attribute value is 1 when the user begins this action and increments by 1 for each full sequence of pressing and releasing. If the user moves the mouse between the mousedown and mouseup the value will be set to 0, indicating that no click is occurring.

入れ子になった要素の場合には,マウスイベントは,常に,最も深く入れ子にされた要素を対象にする。対象になった要素の先祖は,その子孫の要素内で発生するマウスイベントの通知を得るためにバブル動作を使用してよい。

In the case of nested elements mouse events are always targeted at the most deeply nested element. Ancestors of the targeted element may use bubbling to obtain notification of mouse events which occur within its descendent elements.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface MouseEvent : UIEvent {
  readonly attribute long             screenX;
  readonly attribute long             screenY;
  readonly attribute long             clientX;
  readonly attribute long             clientY;
  readonly attribute boolean          ctrlKey;
  readonly attribute boolean          shiftKey;
  readonly attribute boolean          altKey;
  readonly attribute boolean          metaKey;
  readonly attribute unsigned short   button;
  readonly attribute EventTarget      relatedTarget;
  void               initMouseEvent(in DOMString typeArg, 
                                    in boolean canBubbleArg, 
                                    in boolean cancelableArg, 
                                    in views::AbstractView viewArg, 
                                    in long detailArg, 
                                    in long screenXArg, 
                                    in long screenYArg, 
                                    in long clientXArg, 
                                    in long clientYArg, 
                                    in boolean ctrlKeyArg, 
                                    in boolean altKeyArg, 
                                    in boolean shiftKeyArg, 
                                    in boolean metaKeyArg, 
                                    in unsigned short buttonArg, 
                                    in EventTarget relatedTargetArg);
};

属性
Attributes
booleanaltKey,読取り専用
altKey of type boolean, readonly
イベントの発火の最中に'alt'キーが押し下げられたかどうかを示すために使用する。このキーが他のキー名へと対応付けられているプラットフォームがあってもよい。
Used to indicate whether the 'alt' key was depressed during the firing of the event. On some platforms this key may map to an alternative key name.
unsigned shortbutton,読取り専用
button of type unsigned short, readonly
マウスボタンの押下げ又は解放が引き起こすマウスイベントの最中に,どのマウスボタンが状態を変えたかを示すためにbuttonが使用される。buttonに対する値は,マウスの左ボタンを示す0,存在する場合には中央ボタンを示す1,及び右ボタンを示す2とする。ボタン動作が反対になる左利き用に構成されたマウスに対しては,これの代わりに,右ボタンから左ボタンへと(0〜2を)対応付ける。
During mouse events caused by the depression or release of a mouse button, button is used to indicate which mouse button changed state. The values for button range from zero to indicate the left button of the mouse, one to indicate the middle button if present, and two to indicate the right button. For mice configured for left handed use in which the button actions are reversed the values are instead read from right to left.
longclientX,読取り専用
clientX of type long, readonly
DOM実装のクライアント領域に相対的な,イベントが発生した位置の左右方向の座標。
The horizontal coordinate at which the event occurred relative to the DOM implementation's client area.
longclientY,読取り専用
clientY of type long, readonly
DOM実装のクライアント領域に相対的な,イベントが発生した位置の上下方向の座標。
The vertical coordinate at which the event occurred relative to the DOM implementation's client area.
booleanctrlKey,読取り専用
ctrlKey of type boolean, readonly
イベントの発火の最中に'ctrl'キーが押し下げられたかどうかを示すために使用する。
Used to indicate whether the 'ctrl' key was depressed during the firing of the event.
booleanmetaKey,読取り専用
metaKey of type boolean, readonly
イベントの発火の最中に'meta'キーが押し下げられたかどうかを示すために使用する。このキーが他のキー名へと対応付けられているプラットフォームがあってもよい。
Used to indicate whether the 'meta' key was depressed during the firing of the event. On some platforms this key may map to an alternative key name.
EventTargetrelatedTarget,読取り専用
relatedTarget of type EventTarget, readonly
UIイベントに関係する補助的なEventTargetを識別するために使用する。現時点では,この属性は,指示装置が抜け出したEventTargetを示すためにmouseoverイベント(以下参照)とともに使用し,指示装置が入ったEventTargetを示すためにmouseoutイベント(以下参照)とともに使用する。
Used to identify a secondary EventTarget related to a UI event. Currently this attribute is used with the mouseover event to indicate the EventTarget which the pointing device exited and with the mouseout event to indicate the EventTarget which the pointing device entered.
longscreenX,読取り専用
screenX of type long, readonly
スクリーン座標系の原点に相対的な,イベントが発生した位置の左右方向の座標。
The horizontal coordinate at which the event occurred relative to the origin of the screen coordinate system.
longscreenY,読取り専用
screenY of type long, readonly
スクリーン座標系の原点に相対的な,イベントが発生した位置の上下方向の座標。
The vertical coordinate at which the event occurred relative to the origin of the screen coordinate system.
booleanshiftKey,読取り専用
shiftKey of type boolean, readonly
イベントの発火の最中に'shift'キーが押し下げられたかどうかを示すために使用する。
Used to indicate whether the 'shift' key was depressed during the firing of the event.
メソッド
Methods
initMouseEvent
initMouseEventメソッドは,DocumentEventインタフェースを通じて生成されるMouseEventの値を初期化するために使用する。このメソッドは,MouseEventdispatchEventメソッド経由で送り付けられる前にだけ呼び出してよい。ただし,必要な場合には,その段階中に複数回呼び出してもよい。複数回呼び出される場合には,最終の起動が優先される。
The initMouseEvent method is used to initialize the value of a MouseEvent created through the DocumentEvent interface. This method may only be called before the MouseEvent has been dispatched via the dispatchEvent method, though it may be called multiple times during that phase if necessary. If called multiple times, the final invocation takes precedence.
パラメタ
Parameters
DOMStringtypeArg
typeArg of type DOMString
イベント型を指定する。
Specifies the event type.
booleancanBubbleArg
canBubbleArg of type boolean
イベントがバブル動作可能かどうかを指定する。
Specifies whether or not the event can bubble.
booleancancelableArg
cancelableArg of type boolean
イベントのデフォルト動作を禁止できるかどうかを指定する。
Specifies whether or not the event's default action can be prevented.
views::AbstractViewviewArg
viewArg of type views::AbstractView
EventAbstractViewを指定する。
Specifies the Event's AbstractView.
longdetailArg
detailArg of type long
Eventのマウスのクリック回数を指定する。
Specifies the Event's mouse click count.
longscreenXArg
screenXArg of type long
Eventのスクリーンのx座標を指定する。
Specifies the Event's screen x coordinate
longscreenYArg
screenYArg of type long
Eventのスクリーンのy座標を指定する。
Specifies the Event's screen y coordinate
longclientXArg
clientXArg of type long
Eventのクライアントのx座標を指定する。
Specifies the Event's client x coordinate
longclientYArg
clientYArg of type long
Eventのクライアントのy座標を指定する。
Specifies the Event's client y coordinate
booleanctrlKeyArg
ctrlKeyArg of type boolean
Eventの最中にctrlキーが押し下げられたかどうかを指定する。
Specifies whether or not control key was depressed during the Event.
booleanaltKeyArg
altKeyArg of type boolean
Eventの最中にaltキーが押し下げられたかどうかを指定する。
Specifies whether or not alt key was depressed during the Event.
booleanshiftKeyArg
shiftKeyArg of type boolean
Eventの最中にshiftキーが押し下げられたかどうかを指定する。
Specifies whether or not shift key was depressed during the Event.
booleanmetaKeyArg
metaKeyArg of type boolean
Eventの最中にmetaキーが押し下げられたかどうかを指定する。
Specifies whether or not meta key was depressed during the Event.
unsigned shortbuttonArg
buttonArg of type unsigned short
Eventのマウスボタンを指定する。
Specifies the Event's mouse button.
EventTargetrelatedTargetArg
relatedTargetArg of type EventTarget
Eventの関係するEventTargetを指定する。
Specifies the Event's related EventTarget.
返却値なし
No Return Value
例外なし
No Exceptions

発生可能なマウスイベントの異なる型は,次による。

The different types of Mouse events that can occur are:

click(クリック)
clickイベントは,指示装置のボタンが要素上でクリックされるときに発生する。clickは,同じスクリーン位置上でのmousedown及びmouseupとして定義される。これらのイベントの列は,次による。
The click event occurs when the pointing device button is clicked over an element. A click is defined as a mousedown and mouseup over the same screen location. The sequence of these events is:
    mousedown
    mouseup
    click
   
同じスクリーン位置で複数のクリックが発生する場合には,この列を繰り返し,各繰返しでdetail属性を増加する。このイベントは,大部分の要素に対して有効とする。
If multiple clicks occur at the same screen location, the sequence repeats with the detail attribute incrementing with each repetition. This event is valid for most elements.
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
mousedown(マウスボタン押下)
mousedownイベントは,指示装置のボタンが要素上で押されるときに発生する。このイベントは,大部分の要素に対して有効とする。
The mousedown event occurs when the pointing device button is pressed over an element. This event is valid for most elements.
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
mouseup(マウスボタン解放)
mouseupイベントは,指示装置ボタンが要素上で解放されるときに発生する。このイベントは,大部分の要素に対して有効とする。
The mouseup event occurs when the pointing device button is released over an element. This event is valid for most elements.
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, button, detail
mouseover(マウス載せ)
mouseoverイベントは,指示装置が要素上へと移動されるときに発生する。このイベントは,大部分の要素に対して有効とする。
The mouseover event occurs when the pointing device is moved onto an element. This event is valid for most elements.
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, relatedTarget。relatedTargetは,指示装置が抜け出そうとしているEventTargetを示す。
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, relatedTarget indicates the EventTarget the pointing device is exiting.
mousemove(マウス移動)
mousemoveイベントは,指示装置が要素上にある間に移動されるときに発生する。このイベントは,大部分の要素に対して有効とする。
The mousemove event occurs when the pointing device is moved while it is over an element. This event is valid for most elements.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey
mouseout(マウスはずし)
mouseoutイベントは,指示装置が要素から離れて移動されるときに発生する。このイベントは,大部分の要素に対して有効とする。
The mouseout event occurs when the pointing device is moved away from an element. This event is valid for most elements..
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, relatedTarget。relatedTargetは,指示装置が入ろうとしているEventTargetを示す。
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: screenX, screenY, clientX, clientY, altKey, ctrlKey, shiftKey, metaKey, relatedTarget indicates the EventTarget the pointing device is entering.

1.6.3 キーイベント
1.6.3. Key events

DOM水準2イベント規定は,キーイベントモジュールを提供しない。キーボード入力装置を用いる使用のために設計されたイベントモジュールは,DOM規定の今後の版に含まれるであろう。

The DOM Level 2 Event specification does not provide a key event module. An event module designed for use with keyboard input devices will be included in a later version of the DOM specification.

1.6.4 変異イベント型
1.6.4. Mutation event types

変異イベントモデルは,属性及びテキストの修正を含む,文書の構造へのあらゆる変更の通知を可能にするために設計されている。一覧に示された変異イベントは取消し可能として設計されていないことに注意を促してもよいかもしれない。取消し可能とは設計されていないことは,関係するイベントの取消しのために文書への変更が発生するかもしれないし発生しないかもしれない場合には,文書の修正を引き起こす既存のDOMインタフェースを使用するのは非常に難しいという事実による。取消し可能とすることは望ましい能力ではあるが,DOMにトランザクション(の概念)を追加するまでは,そうしないでおくのがよりよいと決定された。

The mutation event module is designed to allow notification of any changes to the structure of a document, including attr and text modifications. It may be noted that none of the mutation events listed are designated as cancelable. This stems from the fact that it is very difficult to make use of existing DOM interfaces which cause document modifications if any change to the document might or might not take place due to cancelation of the related event. Although this is still a desired capability, it was decided that it would be better left until the addition of transactions into the DOM.

木の単独の修正が多くあると,複数の変異イベントを発火させることができる。木のすべての可能な修正による変異イベントの順序付けは,指定するのではなく,実装に任せられる。

Many single modifications of the tree can cause multiple mutation events to be fired. Rather than attempt to specify the ordering of mutation events due to every possible modification of the tree, the ordering of these events is left to the implementation.

DOMアプリケーションは,変異イベントモジュールが実装でサポートされているかどうかを決定するために,DOMImplementationインタフェースのhasFeature(feature, version)メソッドを,パラメタ値をそれぞれ"MutationEvents"及び"2.0"として使用してよい。このモジュールを完全にサポートするためには,実装は,この規定で定義する"Events"機能もサポートしなければならない。DOM水準2コア規定[DOM Level 2 Core]における 適合性 についての追加情報を参照すること。

A DOM application may use the hasFeature(feature, version) method of the DOMImplementation interface with parameter values "MutationEvents" and "2.0" (respectively) to determine whether or not the Mutation event module is supported by the implementation. In order to fully support this module, an implementation must also support the "Events" feature defined in this specification. Please, refer to additional information about conformance in the DOM Level 2 Core specification [DOM Level 2 Core].

備考  MutationEventインタフェースのインスタンスを生成するためには,DocumentEventインタフェースのcreateEventメソッドで使用される入力パラメタの値として,機能を表す文字列"MutationEvents"を使用すること。

Note: To create an instance of the MutationEvent interface, use the feature string "MutationEvents" as the value of the input parameter used with the createEvent method of the DocumentEvent interface.

インタフェース MutationEvent (DOM水準2で導入)
Interface MutationEvent (introduced in DOM Level 2)

MutationEventインタフェースは,変異イベントに関連する特定の文脈情報を提供する。

The MutationEvent interface provides specific contextual information associated with Mutation events.


IDL定義
IDL Definition
// Introduced in DOM Level 2:
interface MutationEvent : Event {

  // attrChangeType
  const unsigned short      MODIFICATION                   = 1;
  const unsigned short      ADDITION                       = 2;
  const unsigned short      REMOVAL                        = 3;

  readonly attribute Node             relatedNode;
  readonly attribute DOMString        prevValue;
  readonly attribute DOMString        newValue;
  readonly attribute DOMString        attrName;
  readonly attribute unsigned short   attrChange;
  void               initMutationEvent(in DOMString typeArg, 
                                       in boolean canBubbleArg, 
                                       in boolean cancelableArg, 
                                       in Node relatedNodeArg, 
                                       in DOMString prevValueArg, 
                                       in DOMString newValueArg, 
                                       in DOMString attrNameArg, 
                                       in unsigned short attrChangeArg);
};

定義グループ attrChangeType
Definition group attrChangeType

Attrが変更された方法を示す整数。

An integer indicating in which way the Attr was changed.

定義済み定数
Defined Constants
ADDITION
Attrは,単に追加された。
The Attr was just added.
MODIFICATION
Attrは,適切な箇所で修正された。
The Attr was modified in place.
REMOVAL
Attrは,単に取り除かれた。
The Attr was just removed.
属性
Attributes
unsigned shortattrChange,読取り専用
attrChange of type unsigned short, readonly
attrChangeは,DOMAttrModifiedイベントを誘発した変更の型を示す。その値は,MODIFICATIONADDITION又はREMOVALを可能とする。
attrChange indicates the type of change which triggered the DOMAttrModified event. The values can be MODIFICATION, ADDITION, or REMOVAL.
DOMStringattrName,読取り専用
attrName of type DOMString, readonly
attrNameは,DOMAttrModifiedイベントにおける変更されたAttrの名前を示す。
attrName indicates the name of the changed Attr node in a DOMAttrModified event.
DOMStringnewValue,読取り専用
newValue of type DOMString, readonly
newValueは,DOMAttrModifiedイベントにおけるAttrノードの新しい値,及びDOMCharDataModifiedイベントにおけるCharacterDataノードの新しい値を示す。
newValue indicates the new value of the Attr node in DOMAttrModified events, and of the CharacterData node in DOMCharDataModified events.
DOMStringprevValue,読取り専用
prevValue of type DOMString, readonly
prevValueは,DOMAttrModifiedイベントにおけるAttrノードの以前の値,及びDOMCharDataModifiedイベントにおけるCharacterDataノードの以前の値を示す。
prevValue indicates the previous value of the Attr node in DOMAttrModified events, and of the CharacterData node in DOMCharDataModified events.
NoderelatedNode,読取り専用
relatedNode of type Node, readonly
relatedNodeは,変異イベントに関係する補助的なノードを識別するために使用する。例えば,親が変更されたことを示すためにあるノードに変異イベントが送り付けられる場合,relatedNodeはその変更された親とする。そうではなく,ノードがある部分木の内部で変更されたことを示すためにその部分木にイベントが送り付けられる場合,relatedNodeは,その変更されたノードとする。DOMAttrModifiedイベントの場合には,修正,追加又は除去されたAttrノードを示す。
relatedNode is used to identify a secondary node related to a mutation event. For example, if a mutation event is dispatched to a node indicating that its parent has changed, the relatedNode is the changed parent. If an event is instead dispatched to a subtree indicating a node was changed within it, the relatedNode is the changed node. In the case of the DOMAttrModified event it indicates the Attr node which was modified, added, or removed.
メソッド
Methods
initMutationEvent
initMutationEventメソッドは,DocumentEventインタフェースを通じて生成されるMutationEventの値を初期化するために使用する。このメソッドは,MutationEventdispatchEventメソッド経由で送り付けられる前にだけ呼び出してよい。ただし,必要な場合には,その段階中に複数回呼び出してもよい。複数回呼び出す場合には,最終の起動が優先される。
The initMutationEvent method is used to initialize the value of a MutationEvent created through the DocumentEvent interface. This method may only be called before the MutationEvent has been dispatched via the dispatchEvent method, though it may be called multiple times during that phase if necessary. If called multiple times, the final invocation takes precedence.
パラメタ
Parameters
DOMStringtypeArg
typeArg of type DOMString
イベント型を指定する。
Specifies the event type.
booleancanBubbleArg
canBubbleArg of type boolean
イベントがバブル動作可能かどうかを指定する。
Specifies whether or not the event can bubble.
booleancancelableArg
cancelableArg of type boolean
イベントのデフォルト動作を起こさないことが可能かどうかを指定する。
Specifies whether or not the event's default action can be prevented.
NoderelatedNodeArg
relatedNodeArg of type Node
Eventの関係するノードを指定する。
Specifies the Event's related Node.
DOMStringprevValueArg
prevValueArg of type DOMString
EventprevValue属性を指定する。この値は,ヌル(null)であってもよい。
Specifies the Event's prevValue attribute. This value may be null.
DOMStringnewValueArg
newValueArg of type DOMString
EventnewValue属性を指定する。この値は,ヌル(null)であってもよい。
Specifies the Event's newValue attribute. This value may be null.
DOMStringattrNameArg
attrNameArg of type DOMString
EventattrName属性を指定する。この値は,ヌル(null)であってもよい。
Specifies the Event's attrName attribute. This value may be null.
unsigned shortattrChangeArg
attrChangeArg of type unsigned short
EventattrChange属性を指定する。
Specifies the Event's attrChange attribute
返却値なし
No Return Value
例外なし
No Exceptions

変異イベントの発生可能な異なる型は,次による。

The different types of Mutation events that can occur are:

DOMSubtreeModified(部分木修正)
これは,文書へのすべての変更の通知のための一般的なイベントとする。以下に一覧で示すより特定のイベントの代わりに使用できる。文書への単一の修正後に,又は実装の判断で複数の変更が発生した後に,発火してよい。後者の使用は,一般に,同時に又は時をおかず続けて発生する複数の変更を収容するために使用することが望ましい。このイベントのターゲットは,発生した変更に関して最も低い(最上位より遠い)位置の共通の親とする。このイベントは,変異によって引き起こされた他のイベントが発火した後で送り付けられる。
This is a general event for notification of all changes to the document. It can be used instead of the more specific events listed below. It may be fired after a single modification to the document or, at the implementation's discretion, after multiple changes have occurred. The latter use should generally be used to accomodate multiple changes which occur either simultaneously or in rapid succession. The target of this event is the lowest common parent of the changes which have taken place. This event is dispatched after any other events caused by the mutation have fired.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
DOMNodeInserted(ノード挿入)
ノードが他のノードの として追加された場合に発火する。このイベントは,挿入が発生した後に送り付けられる。このイベントのターゲットは,挿入されつつあるノードとする。
Fired when a node has been added as a child of another node. This event is dispatched after the insertion has taken place. The target of this event is the node being inserted.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: relatedNodeは,親ノードを保持する。
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: relatedNode holds the parent node
DOMNodeRemoved(ノード除去)
ノードがその親ノードから取り除かれつつある場合に発火する。このイベントは,ノードが木から取り除かれる前に送り付けられる。このイベントのターゲットは,取り除かれつつあるノードとする。
Fired when a node is being removed from its parent node. This event is dispatched before the node is removed from the tree. The target of this event is the node being removed.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: relatedNodeは,親ノードを保持する。
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: relatedNode holds the parent node
DOMNodeRemovedFromDocument(文書からのノード除去)
Nodeの直接の除去又はそれを含む部分木の除去のどちらかを通じて,ノードが文書から取り除かれつつある場合に発火する。このイベントは,除去が行われる前に送り付けられる。このイベントのターゲットは,取り除かれつつあるNodeとする。Nodeが直接に取り除かれつつある場合には,DOMNodeRemovedFromDocumentイベントの前にDOMNodeRemovedイベントが発火する。
Fired when a node is being removed from a document, either through direct removal of the Node or removal of a subtree in which it is contained. This event is dispatched before the removal takes place. The target of this event is the Node being removed. If the Node is being directly removed the DOMNodeRemoved event will fire before the DOMNodeRemovedFromDocument event.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
DOMNodeInsertedIntoDocument(文書へのノード挿入)
Nodeの直接の挿入又はそれを含む部分木の挿入のどちらかを通じて,ノードが文書に挿入されつつある場合に発火する。このイベントは,挿入が行われる前に送り付けられる。このイベントのターゲットは,挿入されつつあるNodeとする。Nodeが直接に挿入されつつある場合には,DOMNodeInsertedIntoDocumentイベントの前にDOMNodeInsertedイベントが発火する。
Fired when a node is being inserted into a document, either through direct insertion of the Node or insertion of a subtree in which it is contained. This event is dispatched after the insertion has taken place. The target of this event is the node being inserted. If the Node is being directly inserted the DOMNodeInserted event will fire before the DOMNodeInsertedIntoDocument event.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
DOMAttrModified(属性修正)
ノード上でAttrが修正された後に発火する。このイベントのターゲットは,Attrが変更されたNodeとする。attrChangeの値は,Attrが修正,追加又は除去されたかどうか示す。relatedNodeの値は,値が影響を受けたAttrノードを示す。文字列に基づくAttr値の置換は,その識別性は変更されないので,Attrの修正としてみなされる。そのAttrノードを異なるAttrノードにするその後の置換は,最初のAttrノードの除去及び2番目のAttrノードの追加としてみなされる。
Fired after an Attr has been modified on a node. The target of this event is the Node whose Attr changed. The value of attrChange indicates whether the Attr was modified, added, or removed. The value of relatedNode indicates the Attr node whose value has been affected. It is expected that string based replacement of an Attr value will be viewed as a modification of the Attr since its identity does not change. Subsequently replacement of the Attr node with a different Attr node is viewed as the removal of the first Attr node and the addition of the second.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: attrName, attrChange, prevValue, newValue, relatedNode
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: attrName, attrChange, prevValue, newValue, relatedNode
DOMCharacterDataModified(文字データ修正)
ノード内のCharacterDataが修正されたがそのノードそれ自体は挿入も削除もされていない場合に発火する。このイベントは,PI要素への修正によっても誘発される。このイベントのターゲットは,CharacterDataノードとする。
Fired after CharacterData within a node has been modified but the node itself has not been inserted or deleted. This event is also triggered by modifications to PI elements. The target of this event is the CharacterData node.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: prevValue, newValue
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: prevValue, newValue

1.6.5 HTMLイベント型
1.6.5. HTML event types

HTMLイベントモジュールは,HTML 4.0で一覧として示されたイベント及び DOM水準0 ブラウザでサポートされる付加的なイベントとから構成される。

The HTML event module is composed of events listed in HTML 4.0 and additional events which are supported in DOM Level 0 browsers.

DOMアプリケーションは,HTMLイベントモジュールが実装によってサポートされるかどうかを決定するために,DOMImplementationインタフェースのhasFeature(feature, version)メソッドを,パラメタ値をそれぞれ"HTMLEvents"及び"2.0"として使用してよい。このモジュールを完全にサポートするためには,実装は,この規定で定義される"Events"機能もサポートしなければならない。DOM水準2コア規定[DOM Level 2 Core]における 適合性 についての追加情報を参照すること。

A DOM application may use the hasFeature(feature, version) method of the DOMImplementation interface with parameter values "HTMLEvents" and "2.0" (respectively) to determine whether or not the HTML event module is supported by the implementation. In order to fully support this module, an implementation must also support the "Events" feature defined in this specification. Please, refer to additional information about conformance in the DOM Level 2 Core specification [DOM Level 2 Core].

備考  HTMLイベントモジュール用のEventインタフェースのインスタンスを生成するためには,DocumentEventインタフェースのcreateEventメソッドで使用される入力パラメタの値として,機能を表す文字列"HTMLEvents"を使用すること。

Note: To create an instance of the Event interface for the HTML event module, use the feature string "HTMLEvents" as the value of the input parameter used with the createEvent method of the DocumentEvent interface.

HTMLイベントは,文脈情報を渡すために,基底DOMイベントインタフェースを使用する。

The HTML events use the base DOM Event interface to pass contextual information.

発生可能なイベントの異なる型は,次による。

The different types of such events that can occur are:

load(ロード)
loadイベントは,DOM実装が文書内のすべての内容,FRAMESET内のすべてのフレーム又はOBJECT要素のロードを終了する場合に発生する。
The load event occurs when the DOM implementation finishes loading all content within a document, all frames within a FRAMESET, or an OBJECT element.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
unload(アンロード)
unloadイベントは,DOM実装がウィンドウ又はフレームから文書を取り除く場合に発生する。このイベントは,BODY要素およびFRAMESET要素に対して有効とする。
The unload event occurs when the DOM implementation removes a document from a window or frame. This event is valid for BODY and FRAMESET elements.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
abort(異常終了)
abortイベントは,画像が完全にロード可能となる前にページのロードが停止される場合に発生する。このイベントは,OBJECT要素に対して適用される。
The abort event occurs when page loading is stopped before an image has been allowed to completely load. This event applies to OBJECT elements.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
error(エラー)
errorイベントは,画像が適切にロードされない,又はスクリプト実行中にエラーが生じる場合に発生する。このイベントは,OBJECT要素,BODY要素及びFRAMESET要素に対して有効とする。
The error event occurs when an image does not load properly or when an error occurs during script execution. This event is valid for OBJECT elements, BODY elements, and FRAMESET element.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
select(選択)
selectイベントは,利用者がテキストフィールドの中のあるテキストを選択する場合に発生する。このイベントは,INPUT要素及びTEXTAREA要素に対して有効とする。
The select event occurs when a user selects some text in a text field. This event is valid for INPUT and TEXTAREA elements.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
change(変更)
changeイベントは,制御が入力注目点を失いその値が注目点を得て以来修正された場合に発生する。このイベントは,INPUT要素,SELECT要素及びTEXTAREA要素に対して有効とする。
The change event occurs when a control loses the input focus and its value has been modified since gaining focus. This event is valid for INPUT, SELECT, and TEXTAREA. element.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
submit(提出)
submitイベントは,フォームが提出された場合に発生する。このイベントは,FORM要素だけに適用される。
The submit event occurs when a form is submitted. This event only applies to the FORM element.
  • バブル動作: 可
  • 取消し可能性: 可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: Yes
  • Context Info: None
reset(再設定)
resetイベントは,フォームが再設定される場合に発生する。このイベントは,FORM要素だけに適用される。
The reset event occurs when a form is reset. This event only applies to the FORM element.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
focus(注目点合せ)
focusイベントは,指示装置経由で又はタブによるナビゲーションによってのいずれかで要素が注目点を受け取る場合に発生する。このイベントは,LABEL要素,INPUT要素,SELECT要素,TEXTAREA要素及びBUTTON要素に対して有効とする。
The focus event occurs when an element receives focus either via a pointing device or by tabbing navigation. This event is valid for the following elements: LABEL, INPUT, SELECT, TEXTAREA, and BUTTON.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
blur(注目点ぼかし)
blurイベントは,指示装置経由で又はタブによるナビゲーションによってのいずれかで要素が注目点を失う場合に発生する。このイベントは,LABEL要素,INPUT要素,SELECT要素,TEXTAREA要素及びBUTTON要素に対して有効とする。
The blur event occurs when an element loses focus either via the pointing device or by tabbing navigation. This event is valid for the following elements: LABEL, INPUT, SELECT, TEXTAREA, and BUTTON.
  • バブル動作: 不可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: No
  • Cancelable: No
  • Context Info: None
resize(大きさ再設定)
resizeイベントは,文書ビューが大きさの再設定をされる場合に発生する。
The resize event occurs when a document view is resized.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None
scroll(スクロール)
scrollイベントは,文書ビューがスクロールされる場合に発生する。
The scroll event occurs when a document view is scrolled.
  • バブル動作: 可
  • 取消し可能性: 不可
  • 文脈情報: なし
  • Bubbles: Yes
  • Cancelable: No
  • Context Info: None