UIEvent.which

非標準: この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

UIEvent.whichUIEvent インターフェイスの読み取り専用プロパティで、マウスの押されたボタンを示す数値、keyCode の数値、キーボードで押されたキーの文字コード (charCode) のいずれかを返します。

KeyboardEvent の値 Non-standard

event.which は、英数字キーと非英数字キーのどちらが押されたかに応じて、押された特定のキーに対する数値のコードを含んでいます。 詳しくは非推奨の KeyboardEvent.charCodeKeyboardEvent.keyCode を参照してください。

メモ: 新しいコードでは KeyboardEvent.key または KeyboardEvent.code を検討してください。

MouseEvent の値 Non-standard

押されたボタンを表す数値型です。

  • 0: No button
  • 1: 左ボタン
  • 2: 中央ボタン
  • 3: 右ボタン

左利き用に設定されたマウスの場合、ボタンの動作は逆になります。この場合、値は右から左に読み取られます。

メモ: 新しいコードでは MouseEvent.button を検討してください。

<html>
<head>
<title>charCode/keyCode/which example</title>

<script type="text/javascript">

function showKeyPress(evt) {
alert("onkeypress handler: \n"
      + "keyCode property: " + evt.keyCode + "\n"
      + "which property: " + evt.which + "\n"
      + "charCode property: " + evt.charCode + "\n"
      + "Character Key Pressed: "
      + String.fromCharCode(evt.charCode) + "\n"
     );
}

function keyDown(evt) {
alert("onkeydown handler: \n"
      + "keyCode property: " + evt.keyCode + "\n"
      + "which property: " + evt.which + "\n"
     );
}

</script>
</head>

<body
 onkeypress="showKeyPress(event);"
 onkeydown="keyDown(event);"
>

<p>Please press any key.</p>

</body>
</html>

仕様書

Specification
UI Events
# dom-uievent-which

ブラウザーの互換性

BCD tables only load in the browser

関連情報