DOMのwhichプロパティ
OperaでASCIIキーボードだとkeyCodeで「→」と「'」の区別が付かない(JISだとshiftKeyで苦し紛れに区別はつく)。のでEventオブジェクトのプロパティ眺めてたらwhichプロパティを発見。
http://developer.mozilla.org/ja/docs/DOM:event
Opera 9.24
- keydownでは常にkeyCodeと同じ値。
- keypressでは(確認した限りでは)矢印, PageUp/Downだとゼロ、それ以外のキーだとkeyCodeと同じ値。
Safari 3.0.4
常にkeyCodeと同じ値。keydownではキーコード、keypressではASCIIコード。
Firefox 2.0.0.9
- keydownではkeyCodeと同じ値。
- keypressではcharCodeが出るキーはcharCodeと同じ値。keyCodeが出るキーのうちEnter, BSなどの一部のキーのみkeyCodeの値、その他はゼロ。
IE6
未定義。
矢印キーはこれでどうにかなってもDelと「.」の区別はつかない気がするんだけど、みんなどうしてるんだろう。別にDelは使わないからいいんだけど。