我有一个网络应用程序,我在其中使用 accesskey
属性到某些按钮。但是我无法设置 alt + F accesskey
因为它打开了 Firefox 的文件菜单。我尝试过以下代码
onkeydown = function(e){
if(e.altKey && e.keyCode == 'F'.charCodeAt(0)) {
e.stopImmediatePropagation();
e.stopPropagation();
return false;
}
}
它看起来不像在 firefox 中工作,但在 chrome 中工作正常。除了 alt+F(文件菜单)、alt+ 之外,所有其他 alt 组合键均可被覆盖E(编辑菜单)、alt+V(查看)、alt+S(历史记录) ), alt+B(书签),alt+T(工具),altfirefox 中的 kbd>+H(帮助)。
我在 Ubuntu 中运行它。有办法做到吗?它应该可以在 Windows 和 Linux 中运行。
最佳答案
对于 alt + f 或 alt + F 下面的代码将起作用。
onkeydown = function(e){
if(event.altKey && event.keyCode == 70) {
console.log("alt + f pressed")
event.preventDefault();
}
}
如果说 alt + F - 你的意思是你想做 alt + shift + f/F - 在这种情况下以下代码将起作用
onkeydown = function(e){
if(event.altKey && event.shiftKey && event.keyCode == 70) {
console.log("alt + shift + f/F pressed")
event.preventDefault();
}
}
其余组合将以类似的方式工作 引用按键代码表here
关于javascript - 如何使用 Javascript 作为 accesskey 覆盖/禁用 Firefox 菜单快捷键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43004303/