好,所以我觉得答案显然不是,但是我非常困惑。我已经使用数字键盘连接了一些关键事件监听器。我从一个在线资源中获取了代码,并通过每次按键记录事件来进行两次检查。到目前为止,一切正常。我每天都在使用它。我只是再次使用它而没有任何效果。
检查来自键盘的值,现在我看到这些值不同于我之前定义的值。
[以前,所有值都在〜90到〜105之间(对于小键盘数字)。现在它们大约在30到40之间。
我想念的是什么?我已将其更改为“新值”,但是在某些情况下会获得“旧值”吗?哪一个?对此很困惑。
编辑:不确定人们是否会对此表示反对。无论如何,这是我从以前得到的来源:
https://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes这是另一个:http://gcctech.org/csc/javascript/javascript_keycodes.htm
[如果您至少要反对,请评论并解释原因。
编辑2:好的,所以我认为更改的来源是numLock
。是否有办法解决,所以键值将保持不变?
这次您可能正在使用其他网络浏览器,是这样吗?
在这里您可以找到一个很好的解释:http://unixpapa.com/js/key.html
您应该执行类似以下代码的操作,这应该检测在任何浏览器中按下的等号键:
document.onkeypress = function(e) {
e = e || window.event;
var charCode = (typeof e.which == "number") ? e.which : e.keyCode;
if (charCode && String.fromCharCode(charCode) == "=") {
alert("Equal!");
}
};