我想要实现的是检测fn + f7按键。
这是我的代码,不是用fn键触发的:
document.addEventListener("keydown", onKeyDown, false);
function onKeyDown(e) {
console.log(e);
}
更新: 我发现检测fn + f5适用于Windows但不适用于我的linux。 是否有要安装的软件包来为firefox添加媒体密钥?
答案 0 :(得分:4)
大多数FN密钥都在固件中实现,不会被应用程序识别。您可以使用这样的网站来测试javascript可以处理的内容:
答案 1 :(得分:4)
按下fn
键时无法捕捉。
但是,如果按fn+F7
,则会生成不同的event
对象,而不是单独按F7
- ,因为该功能已绑定到该键。所以在我的情况下,我对F7没有任何约束,因此如果按fn+F7
键,就不会生成任何事件。
如果我按F3
然后按fn+F3
,则会生成以下代码:
KeyboardEvent {isTrusted: true, key: "F3", code: "F3", location: 0, ctrlKey: false, …}
KeyboardEvent {isTrusted: true, key: "AudioVolumeUp", code: "AudioVolumeUp", location: 0, ctrlKey: false, …}
希望这有帮助。
----以下更多信息----
正如我预期的那样fn
密钥并不真正生成任何密钥代码。相反,在硬件级别上,当与其他键组合使用时,它会生成唯一的键码。
基于此问题的回答的信息:https://askubuntu.com/questions/827925/remapping-the-fn-key
这个: https://askubuntu.com/questions/270416/how-do-fn-keys-work
答案 2 :(得分:0)
试试这个,
document.addEventListener("keydown", onKeyDown, false);
function onKeyDown(e) {
var x = e.keyCode;
if(x==118){
console.log('Your pressed Fn+F7');
}
}
感谢。
答案 3 :(得分:-2)
要查找按下的键:
var intKey=self.setInterval(onkeydown="findKey(event);",5000);
function findKey(e)
{
console.log("keyCode for the key pressed: " + e.keyCode + "\n");
}