質問編集履歴

1

目的について記載を追加しました

2019/08/04 06:19

投稿

stringthread
stringthread

スコア19

test CHANGED
File without changes
test CHANGED
@@ -1 +1,7 @@
1
1
  JavaScriptを用いて、IMEでの入力に対して通常の半角文字入力と別の処理をしたいと考えているのですが、その条件分岐の方法が分かりません。CompositionEventなどは全て1文字目のキー入力を受けてから発火するため、そのような検知方法ではなく、それ以前にIMEのOnとOffが切り替わった時点で変化する状態や発火するイベントが欲しいです。有用な機能や具体的な実装(あるいはライブラリ)に思い当たるものがある方はぜひご教示ください。
2
+
3
+ [追記]
4
+
5
+ 目的としては、テキストエディタを作成中で、基本的には非表示の textarea 入力を画面内の要素にコピーして表示させるという形をとっているのですが、その実装のままではIME入力の変換候補が適切な位置に描画されないため、IME入力中のみ画面内にcontenteditable属性を設定した要素を表示して実装しようと考えています。その際にIME入力用の要素にフォーカスを移すためのイベントが必要で、それを探しているという形になります。
6
+
7
+ CompositionEventなどを使うと、フォーカス移動の前に最初の入力があるため、入力された1文字目が欠落してしまうので、最初の文字入力の前にIMEがOnになったことを検知する方法を探しています。