keypressでのkeyCode & charCode
Firefoxはkey pressイベントでkeyCodeを取得できない。0 が返ってくる。(Windows版だと大丈夫か?後で確認。)
Operaはkey pressイベントでcharCodeを取得できない。undefined が返ってくる
問題を解決するためには,
element.onkeypress = function(e) { var keycode = e.keyCode || e.charCode; // 処理 }
とすればよいかな。
このページでKonquerorでテストしたら,keyCode, charCodeともに取得できるもののkeypressのイベント発生のタイミングがおかしい。しばらく押したままにしないと発生しない…。
試した環境は, Opera(Linux), Firefox(Linux), Konqueror。あとでWindows環境も調べる。
参考
http://qooxdoo.org/documentation/user_manual/keyboard_events
その他,キーイベント処理のブラウザごとの問題がかいてある。
Operaがもっともひどいとかかれてある。キーボードでのスマートなブラウジング実現の犠牲だろうか。