我正在尝试编写一个脚本来检测是否按下了某个键,但是我能想到的唯一合理的事情就是这个。
onkeydown('F12'){
myFunction()
}
我该怎么做?谢谢!
答案 0 :(得分:1)
为“ keydown”(或“ keyup”)操作添加事件侦听器。 要获取所按下的特定键,请使用“ event.key”。
document.addEventListener("keydown", function(e){
var key = e.key
})
答案 1 :(得分:1)
使用keyCode可以获取特定的密钥。如果您按Enter关键字(代码13),则此示例有效。检查一下:https://keycode.info/
document.addEventListener("keypress", function(event) {
if (event.keyCode == 13) {
console.log('Hello world');
}
});
答案 2 :(得分:0)
也许这就是您想要的:
var inputForm = document.getElementById("taskInput");
inputForm.addEventListener('keydown', function(event) {
console.log("You are pressing this key :", String.fromCharCode(event.keyCode));
});
<input type="text" id="taskInput"/>
答案 3 :(得分:0)
您应该收听keydown
事件并检查其e.key
属性:
const KEY_HANDLERS = {
F1: () => console.log('You pressed F1.'),
ArrowUp: () => console.log('You pressed ↑.'),
KeyA: () => console.log('You pressed A.'),
};
document.addEventListener('keydown', (e) => {
e.preventDefault();
const handler = KEY_HANDLERS[e.code];
if (handler) {
handler();
return;
}
console.log('Pressed a key without a handler.')
});
如果需要检查KeyboardEvent的属性值,例如e.key
,e.code
,e.which
或e.keyCode
,则可以使用https://keyjs.dev:
免责声明:我是作者。