【问题标题】:Key code of button "Q" and "F2" coming same按键“Q”和“F2”键码相同
【发布时间】:2017-09-14 14:39:27
【问题描述】:

当按下F2 按钮时我会弹出一个弹出窗口,但问题是当我按下Q 按钮时弹出窗口即将到来。我的第一个想法是我的键盘有问题,所以我尝试了不同的系统,结果是一样的。然后我做了一个test code,只是为了确保我的代码中没有错误,但它也给出了相同的结果。这是我的示例代码

<html>
	<head>
		<script>
			function giveFocusToRespectiveQuantity(evt) {
		    	var charCode = (evt.which) ? evt.which : evt.keyCode;
		    	alert(charCode);
			}
		</script>
	</head>
	<body>
		<input type="text" onkeypress="return giveFocusToRespectiveQuantity(event)">
	</body>
</html>

正如您所看到的,当按下 F2Q 时,charcode 对两者都是相同的。这是为什么呢?

这些链接表明Q 的关键代码是81

  1. Javascript Char Codes (Key Codes)
  2. KeyboardEvent Value (keyCodes, metaKey, etc)

【问题讨论】:

  • 如果你只坚持event.which,那么F2 给出0 和Q 113

标签: javascript keycode


【解决方案1】:

改用“onkeydown”或“onkeyup”。因为 onkeypress 只检测允许的键,而不是控制键。

例如:

<input type="text" onkeydown="return giveFocusToRespectiveQuantity(event)">

F2 键返回 113,q/Q 键返回 81。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-02
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    相关资源
    最近更新 更多