例
押されたキーボードのキーのUnicode値を取得します。
var x = event.which;
xの結果は次のようになります。
119 // 119 is the character
"w"
»それを自分で試してみてください もっと"Try it Yourself"以下の例。
定義と使用法
どのプロパティがトリガーキーのUnicode文字コードを返しれるonkeypressイベント、またはトリガーキーのUnicodeのキーコードにonKeyDownまたはonkeyupのイベントを。
2つのコードの種類の違い:
- 文字コード - ASCII文字を表す番号
- キーコード - キーボード上の実際のキーを表す数値
これらのタイプは、常に同じことを意味するものではありません。 例えば、小文字"w"と大文字"W"キーボードで押下されたキーが同じであるため、同一のキーボードコードを持っている(just "W" = the number "87")異なります文字コード結果の文字は、(いずれかの異なるため、 "w"または"W" 、である"119"又は「87」) -を参照して"More Examples"良いことを理解するために以下を。
ヒント:ユーザーが印刷可能なキー(例えば押しているかどうかを調べるには"a"または「5」)、OnKeyPressイベントでこのプロパティを使用することをお勧めします。 ユーザは、ファンクションキーを押しているかどうかを調べるには(例えば"F1" 、 "CAPS LOCK"または「ホーム」)にonKeyDownまたはonkeyupのイベントを使用します。
注意:IE8でサポートされており、それ以前されていない財産。 これらのブラウザのバージョンについては、使用することができますキーコードプロパティを。 しかし、キーコードプロパティは、FirefoxでOnKeyPressイベントでは動作しません。 クロスブラウザのソリューションについては、次のようなコードを使用することができます。
var x = event.which || event.keyCode; // Use either which or keyCode ,
depending on browser support
ヒント:すべてのUnicode文字の一覧については、私たちの勉強してください完全なUnicodeのリファレンスを 。
ヒント:あなたは文字に返されたUnicode値を変換したい場合は、使用fromCharCode()メソッドを。
注意:このプロパティは読み取り専用です。
注意:これとキーコードプロパティの両方が互換性のためにのみ提供されます。 DOM Events仕様の最新バージョンは、使用することをお勧めキーの代わりにプロパティを(if available) 。
ヒント:かどうかを確認したい場合は"ALT" 、 "CTRL" 、 "META"または"SHIFT"キーイベントが発生したときにキーが押された、使用altKeyの 、 ctrlKey 、 metakeyなまたはshiftKeyプロパティを。
ブラウザのサポート
表中の数字は完全にプロパティをサポートする最初のブラウザのバージョンを指定します。
プロパティ | |||||
---|---|---|---|---|---|
which | はい | 9.0 | はい | はい | はい |
構文
event .which
技術的な詳細
戻り値: | Unicode文字コードやUnicodeのキーコードのいずれかを表す数値、 |
---|---|
DOMバージョン: | DOMレベル2のイベント |
その他の例
例
onkeypressでは使用して文字コードとキーボードのコードの違いを実証することにonKeyDown:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)">
function uniCharCode(event) {
var char = event.which ||
event.keyCode; // event.keyCode is used for IE8 and earlier
document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " +
char;
}
function uniKeyCode(event) {
var key = event.which
|| event.keyCode; // event.keyCode is used for IE8 and earlier
document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key;
}
押すと"a"キーボード上のキー(not using caps lock) 、 文字とキーの結果は次のようになります。
Unicode CHARACTER code: 97
Unicode KEY
code: 65
»それを自分で試してみてください 例
ユーザーがEscキーを押すと、いくつかのテキストを警告:
<input type="text" onkeydown="myFunction(event)">
function
myFunction(event) {
var x = event.which || event.keyCode; //
event.keyCode is used for IE8 and earlier
if (x == 27) { // 27 is the ESC key
alert ("You pressed the Escape key!");
}
}
»それを自分で試してみてください 例
Unicode値を文字に変換する(does not work for function keys) :
var x = event.which || event.keyCode; // Get the Unicode value
var y = String.fromCharCode(x); // Convert the value into a character
»それを自分で試してみてください 関連ページ
HTML DOMリファレンス: KeyboardEvent key Property
HTML DOMリファレンス: KeyboardEvent keyCode Property
HTML DOMリファレンス: KeyboardEvent charCode Property
<イベントオブジェクト