UIEvent:which 属性

已弃用:此功能不再推荐。虽然一些浏览器可能仍然支持它,但它可能已经从相关的 Web 标准中删除,或者正在被删除的过程中,或者可能只保留是为了兼容性目的。避免使用它,如果可能的话更新现有代码;请参阅此页面底部的 兼容性表 来指导您的决定。请注意,此功能可能随时停止工作。

UIEvent.whichUIEvent 接口的只读属性,它返回一个数字,该数字指示鼠标上按下了哪个按钮,或者键盘上按下的键的数字 keyCode 或字符代码 (charCode)。

KeyboardEvent 的值 非标准

对于 KeyboardEventevent.which 包含特定按键的数字代码,具体取决于按下的是字母数字键还是非字母数字键。请参阅已弃用的 KeyboardEvent.charCodeKeyboardEvent.keyCode 了解详细信息。

注意:对于新代码,请考虑使用 KeyboardEvent.keyKeyboardEvent.code

MouseEvent 的值 非标准

对于 MouseEventevent.which 是一个数字,表示给定的按钮

  • 0:无按钮
  • 1:左按钮
  • 2:中间按钮(如果存在)
  • 3:右按钮

对于配置为左撇子使用的鼠标,按钮操作将被反转。在这种情况下,从右到左读取这些值。

注意:对于新代码,请考虑使用 MouseEvent.button

示例

html
<html lang="en">
  <head>
    <title>charCode/keyCode/which example</title>

    <script>
      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>

规范

规范
UI 事件
# dom-uievent-which

浏览器兼容性

BCD 表格只在浏览器中加载

另请参阅