Google suggestの補完候補表示機能は、便利なので、結構いろんな人がマネをしている。
俺も
これで真似しているわけだが、まだマネし切れていない部分がある。
それは、かな漢字変換が未確定の段階での、補完候補取得機能。
IME-on でも、キーをタイプする毎に、補完候補が更新されるっていうヤツ。
Google 以外で、この機能を Cross-Browser に実装して、公開している人もいないようだ。
という事で、あの難読化された
ac.js から学ぶ事にする。
現段階で分かっている事は、
IME-on 状態で、
IE:
キータイプ毎に keydown, keyup が発生する。keypress は発生しない。
未確定段階の入力値を getElementById().value で取得できる。
Firefox:
キータイプ毎に keydown, keypress が発生。keyup は発生しない。
未確定段階の入力値を getElementById().value で取得できない。
[Enter]で確定すると、 keyup が発生し、入力値を getElementById().value で取得できる。
Opera:
キータイプしても keydown,keypress,keyup は発生しない。
未確定段階の入力値を getElementById().value で取得できない。
[Enter]で確定しても、keydown,keypress,keyup は発生しない。
そこから更に[Enter][Backspase]などの制御キーをタイプすると、
ようやく keydown,keypress,keyup が発生する。
[
テスト]
やっぱり、google の中の人はすごいなぁ。それにひきかえ Opera の中の人は…。