2005-11-06 ========== Event.which, Event.charCode, Event.keyCode ------------------------------------------ Reference URI: http://lowreal.net/logs/2005/11/06/1 Written Time: 2005-11-06T21:32:52+09:00 Tags: javascript script dom 違いがわからんうえに、ちゃんとキーボードと対応してない。英語キーボードだとちゃんと 対応してんのか? e.which, e.charCode, e.keyCode, String.fromCharCode(e.which) の順で、前者が keyd own、後者が keypress。環境は Firefox 1.0.7 ;: 61 0 61 = / 59 59 0 ; C-;: 61 0 61 = / 61 61 0 = C-+ (Ctrl+Shidt+;) テンキー側の C-+ は問題なし: 61 0 61 = / 61 61 0 = C-:: 59 0 59 ; / 59 59 0 ; C-| (Ctrl+Shift+\): 220 0 220 テ・ / 発生しない C-a: 65 0 65 A / 97 97 0 a C-F1: 112 0 112 p / 0 0 112 差が一定ってわけじゃないし、どうやってマッピングすればいいか見当がつかない。さらに IE (Internet Explorer) だとイベントが発生するタイミングがまた全然違う。帰れ。 [Gecko_DOM_Reference:Examples#Example_7:_Displaying_Event_Object_Constants](http://developer.mozilla.org/en/docs/Gecko_DOM_Reference:Examples#Example_7:_Displaying_Event_Object_Constants) つまり、正確に処理するにはキーボード配置を自分で作らないとダメなわけか。入力された 文字を取得したいのに、入力されたキーしか取得できない。Gecko の e.charCode って ch arCode じゃないだろ。 それにしてもなんでセミコロンの位置でDOM_VK_EQUALSなんだろう。わからん。