我编写了一个简短的 Chrome 扩展,当我在扩展列表中单击它时,它可以按预期工作。
即。我的代码运行
onClicked
(chrome.action.onClicked.addListener(...)
)
我想添加键盘快捷键(例如 Ctrl+Shift+Q),但不知道如何添加。
有什么想法吗?
对于上下文:我真的不了解 javascript,我正在将其作为我自己日常工作的帮手。
您可以使用命令。
第一步是将命令添加到manifest.json 文件中。我在下面添加了一个示例,它应该看起来与您的非常相似,但您真正需要的部分是“commands”:{}部分。这告诉 chrome 当用户点击“Ctrl+Shift+Q”时要注意。请注意,您可以添加多个命令,如下例所示。
{
"name": "Getting Started Example",
"description": "Build an Extension!",
"version": "1.0",
"manifest_version": 3,
"background": {
"service_worker": "background.js"
},
"devtools_page": "devtools.html",
"commands": {
"name-of-command-passed-into-function": {
"suggested_key": "Ctrl+Shift+Q",
"description": "do somthing"
}
"shortcut2": {
"suggested_key": "Ctrl+Shift+A",
"description": "do somthing else"
}
},
"options_page": "options.html",
"permissions": ["storage", "activeTab", "scripting","tabs"],
}
现在,当用户点击“Ctrl+Shift+Q”或“Ctrl+Shift+A”时,chrome 将寻找一些非常具体的代码来运行:
chrome.commands.onCommand.addListener((command,tab) => {
//do stuff here
});
添加此代码并将此处的 //do stuff 更改为您要运行的代码。命令属性只是一个与清单中的类型相匹配的字符串,“传递到函数中的命令名称”或“shortcut2”。这是您如何判断用户输入了哪个命令快捷方式的方法,但如果您只需要一个,请从清单文件中删除第二个。
插件启动时效果很好,但是还有一种方法可以通过这样的键盘点击来触发插件的启动吗? 我有一位客户在“信息亭模式”下运行 Google Chrome,因此看不到任何加载的插件。这个想法是允许使用键盘单击来启动插件。