如何获取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!也许能提供一个解决方案?