我正在尝试添加自定义键以触发事件。我可以使keyup
和keydown
事件正常工作,但是由于某些原因,keypress
事件无法正常工作。我见过很多重复的东西,但大多数在jquery中。
此外,在研究此文档时,我遇到了说明keyCode
已过时的文档,应改为使用key
。但是如果我写
if (event.key === 74)
代码不起作用
下面的代码是我正在尝试做的一个简单示例。
window.addEventListener('keypress', function(event) {
if (event.keyCode === 74) {
console.log('Show me');
}
});
答案 0 :(得分:2)
您的代码工作正常(假设您输入的是大写字母 J
)。
如果您还想检查小写的J
,则keyCode将为106
:
window.addEventListener('keypress', function(event) {
if (event.keyCode === 74 || event.keyCode === 106) {
console.log('Show me');
}
});
答案 1 :(得分:1)
区别是大写字母和小j。您仅将代码用于大写字母j
window.addEventListener('keypress', function(event) {
console.log(event.keyCode)
if (event.keyCode === 74 || event.keyCode === 106) {
console.log('Show me');
}
});
答案 2 :(得分:0)
在检查J(74)时需要使用偶数。
window.addEventListener('keypress', function(event) {
if (event.which === 74) {
console.log('Show me');
}
});
答案 3 :(得分:0)
您可以改用按键按下,这将同时捕获大小写j
。
window.addEventListener('keydown', function(event) {
if (event.keyCode === 74) {
console.log('Show me');
}
});