javascript - 覆盖 Firefox 和 Chrome 中的快捷键

标签 javascript html google-chrome firefox

我有一个脚本应该打开网页的一部分,并分别在 Ctrl + n 和 Ctrl + s 上保存更改。我让它在 IE 中工作,但它似乎在 Firefox 和 Chrome 中不起作用。有什么想法吗?

我的覆盖函数。

function prevent(e)
{
try{e.stopPropagation();}catch(ex){}
try{e.preventDefault()}catch(ex){}
try{if (e.preventDefault)
        e.preventDefault();
    else {
        e.cancelBubble = true;
        e.returnValue = false;
        e.keyCode = 0;
    }}  catch(ex){}
}

最佳答案

我看到了同样的问题。某些浏览器不允许您捕获某些快捷方式。看这个https://stackoverflow.com/a/7296303/1366887

某些组合键在 Chrome 4 中受到限制,但在 Chrome 3 中不受限制。看这里:https://groups.google.com/a/chromium.org/forum/?fromgroups=#!topic/chromium-bugs/Ntc1byZXHfU

这是 Javascript:

$(window).keydown(function(event) {
  if(event.ctrlKey && event.keyCode == 84) { 
    console.log("Hey! Ctrl+T event captured!");
    event.preventDefault(); 
  }
  if(event.ctrlKey && event.keyCode == 83) { 
    console.log("Hey! Ctrl+S event captured!");
    event.preventDefault(); 
  }
});

我用过很多次,效果很好。

这是您可以查看的另一个资源:http://unixpapa.com/js/key.html

没有 Jquery:

onkeydown = function(e){
  if(e.ctrlKey && e.keyCode == 'S'.charCodeAt(0)){
    e.preventDefault();
    //your saving code
  }
}

这是一个JSFIDDLE它的工作。

关于javascript - 覆盖 Firefox 和 Chrome 中的快捷键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15911785/

相关文章:

javascript - 从 Reactjs 中制作 div 滚动

html - 禁用编辑后,红色拼写检查波浪线仍保留在 chrome 中

javascript - 如何让我的 JavaScript 内存游戏选择不超过 2 个方 block

javascript - Node JS : Request Loop Until Status Code 200

html - 为什么父div中的子div占用的宽度多于定义的宽度?

google-chrome - Chrome 扩展程序的 Twitter OAuth 回调 URL

javascript - 将数据从一个开发工具发送到另一个开发工具

javascript - 我如何找出导致页面不允许突出显示文本或右键单击的脚本?

javascript - 如何定义回调函数并稍后触发?

javascript - 在日期选择器 JavaScript 中显示下拉菜单指示的月份