通过快捷键激活扩展

时间:2012-04-30 17:13:41

标签: google-chrome-extension

是否可以通过快捷键打开/启动Google Chrome扩展程序。例如,我想指定一个快捷方式,比如CTRL + E来打开我的扩展程序并启动它。

以前有人这样做过吗?

1 个答案:

答案 0 :(得分:5)

更新 (2013年5月24日):您可以使用新的chrome.commands API,它为键盘命令提供内置框架支持。< / p>

原始答案如下:

第1步:使用content script将按键侦听器绑定到每个页面。

// in the content script, listen for Crtl+Shift+E (upper or lowercase)
document.documentElement.addEventListener("keypress", function(event) {
    if((e.keyCode == 69 || e.keyCode == 101) && e.ctrlKey && e.shiftKey) {
        // do something (step 2, below)
    }
}, true);

第2步:对于内容脚本之外的操作,请使用message passing通知后台页面已按下快捷键,并应执行某些操作。

第3步:后台页面会执行一些操作。目前不可能(并且可能never be possible)以编程方式打开“浏览器操作”弹出窗口,但您可以发送交互式desktop notification,打开新选项卡或执行许多其他操作。

[编辑:编辑代码以包含Rob W.的建议;请参阅下面评论中关于安全性的重要说明。]