DOM compositionstart
イベントはユーザがIMEで未確定文字列の入力を開始した時のように、間接的なテキスト入力を開始した時に同期的に発生します。このイベントは CompositionEvent
インターフェースを持ちます。
注釈: このイベントはテキストが編集が始まる前に発生すべきではあるのですが、Gecko では編集を始めた直後に発生します。
- インターフェース:
CompositionEvent
- 同期・非同期 :同期
- バブルフェーズ :有り
- ターゲット :
Element
- キャンセル : 可能 (ただし、下記のブラウザ固有の事情を参照)
- 既定動作 : 無し
仕様書
ブラウザ間の互換性
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本的なサポート |
(有) data 属性値は仕様と違っています。 |
9.0 (9.0) |
(有) data 属性値は常に空です。 |
未サポート | ? |
機能 | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
基本的なサポート | ? | 9.0 (9.0) | ? | ? | ? |
Gecko の動作メモ
DOM Level 3 仕様書では compositionstart
はキャンセル可能と定義されています。しかし、 Gecko では現在のところ、キャンセルをできないようにしています。
Gecko はこのイベントをIMEが編集を開始した時に発生させます。また、プラットフォームによっては開始された編集を取り消すAPIがありません。さらに、Gecko は IME が実際に編集を開始するまで各キーイベントがそのきっかけとなるかどうか知ることができません。これらの理由から、compositionstart
イベントの event.preventDefault()
は Gecko では機能しません。