nsIDOMUIEvent
最終更新: Gecko 9.0 (Firefox 9.0 / Thunderbird 9.0 / SeaMonkey 2.6)DOM CompositionEvent は間接的なテキストの入力によって発生するイベントです。
メソッド一覧
void initCompositionEvent(in DOMString typeArg,in boolean canBubbleArg, in boolean cancelableArg, in views::AbstractView viewArg, in DOMString dataArg, in DOMString localeArg); |
属性
| 属性 | 型 | 説明 |
data | DOMString |
読み込み専用。 |
locale | DOMString | 現在の入力システムのロケールです。例えば、入力システムが IME であればそれに関連したキーボードレイアウトのロケールになります。読み込み専用。 |
メソッド
initCompositionEvent
composition イベントの属性を初期化します。
void initCompositionEvent( in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in views::AbstractView viewArg, in DOMString dataArg, in DOMString localeArg );
引数
typeArg- composition イベントの種類。
compositionstart、compositionupdate、compositionendのいずれか。 canBubbleArg- バブルフェーズでも発生するか否か。
cancelableArg- キャンセル可能か否か。
viewArg- ?
dataArgdata属性の値。localeArglocale属性の値
仕様書
ブラウザ間の互換性
| 機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| 基本的なサポート | (有) | 9.0 (9.0) | (有) | 未サポート | ? |
| 機能 | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| 基本的なサポート | ? | 9.0 (9.0) | ? | ? | ? |
Gecko の動作メモ
compositionstart と compositionend イベントは Gecko 9.0 よりも古いバージョンでも発生しています。ですが、DOM Level 3 の属性やメソッドは持ちません。compositionupdate イベントは Gecko 9.0 で初めて追加されました。 (Firefox 9.0 / Thunderbird 9.0 / SeaMonkey 2.6).
locale 属性をまだサポートしていません。ですが、Web 開発者は信頼できないイベントを生成する際に、initCompositionEvent() で初期化することはできます。Gecko のエディタ (例えば、<input type="text"> や <div contenteditable/> や designMode) は compositionstart イベントのバブルフェーズ後に編集を開始します。つまり、Web コンテンツの compositionstart イベントハンドラが呼び出された時にはまだコンテンツは変更されていません。
Gecko のエディタは compositionupdate イベントを処理していません。Web コンテンツの compositionupdate イベントハンドラが呼び出された時にはまだコンテンツは変更されていません。
Web コンテンツの compositionend イベントハンドラが呼び出された時、編集は終了しています。これ以降、内容の変更はありません。もし、Web コンテンツが compositionstart か compositionend イベントの event.stopPropagation() を呼び出すと、そのエディタでは IME の編集操作が妨害され、エディタは編集状態の管理に失敗してしまいます。バグ 697842 でこの問題は修正されます。