Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取Alt+;C(或任何其他键)在Chrome for Mac和windows上使用JavaScript_Javascript_Google Chrome Extension - Fatal编程技术网

如何获取Alt+;C(或任何其他键)在Chrome for Mac和windows上使用JavaScript

如何获取Alt+;C(或任何其他键)在Chrome for Mac和windows上使用JavaScript,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我试过下面的代码 window.onkeypress = function(event){ if(event.altKey && (event.keyCode == 99 || event.keyCode == 67)){ alert("alt + C pressed") } } 它怎么会不起作用 我试着每按一次键都发出警报(event.keyCode),似乎当我在Mac上按opt/alt键时,我会得到一个不同的键码,而不是99或67 实现这一目标

我试过下面的代码

window.onkeypress =  function(event){

   if(event.altKey && (event.keyCode == 99 || event.keyCode == 67)){

      alert("alt + C pressed")
   }
}
它怎么会不起作用

我试着每按一次键都发出警报(event.keyCode),似乎当我在Mac上按opt/alt键时,我会得到一个不同的键码,而不是99或67


实现这一目标的正确方法是什么

尝试使用
keydown
keydup
处理程序。在这种情况下,“c”=
keyCode
67:

window.onkeydown = function(e) {
    e = e || event;
    if (e.altKey && e.keyCode === 67) {
        console.log("alt+c pressed!");
    }
}​

我见过并尝试过该示例的可能重复。命令键工作正常。我的alt有问题!明白了,Mac上的选项加上其他按键组合会生成不同的字符,这就是为什么!opt+c在文本编辑上打印,这就是为什么不同的按键代码在iMac键盘上不起作用。Option+key正在生成一个不同的字符,并且keyCode值不会保持67或99!我想用这个组合键启动一个弹出窗口,我想我会改为使用cmd+shift+c!也许能提供一个解决方案?