将上下文菜单项添加到 Chrome 扩展程序的浏览器操作按钮 [英] Add contextmenu items to a Chrome extension's browser action button
问题描述
G Chrome 扩展程序可以具有浏览器操作".通常 ext 开发人员会在您单击它时显示选项,这意味着每个操作都需要点击 2 次,即使是默认的 99% 时间操作也是如此.Chrome 本身添加了一个带有几个选项的上下文菜单:禁用 ext、卸载 ext、转到 ext 主页等.
A G Chrome extension can have a 'browser action'. Usually the ext developer displays the options when you click on it, meaning every action requires 2 clicks, even the default 99%-of-the-time action. Chrome itself adds a context menu with a few options: disable ext, uninstall ext, go to ext homepage etc.
作为 ext 开发人员,我可以将项目添加到该上下文菜单中,以便我可以在正常/左/主鼠标单击下保持我的一键操作吗?
Can I as ext developer add items to that context menu, so I can keep my 1-click-action under the normal/left/primary mouse click?
我知道 chrome.contextMenus 但这仅适用于页面中的上下文菜单(请参阅属性 '
I know of chrome.contextMenus but that's only for context menus in the page (see property 'contexts').
我在 Chrome 扩展程序开发指南中找不到它,但您比我知道的更多.
I can't find it in the Chrome Extension dev guide, but you know more than I.
推荐答案
是 现在有可能,AdBlock chrome 扩展程序有它.下面是浏览器操作中的上下文菜单"的工作示例.
It is now possible, AdBlock chrome extensions has it. Below is working example of "context menu in browser action".
manifest.json:
manifest.json:
{
"name": "Custom context menu in browser action",
"version": "1",
"manifest_version": 2,
"background": {
"scripts": ["background.js"]
},
"browser_action": {
"default_title": "Some tooltip",
"default_popup": "popup.html"
},
"permissions": [
"contextMenus"
],
"icons": {
"16": "icon16.png"
}
}
background.js:
background.js:
chrome.contextMenus.removeAll();
chrome.contextMenus.create({
title: "first",
contexts: ["browser_action"],
onclick: function() {
alert('first');
}
});
请注意,如果您使用 活动页面,则不能使用 onclick
属性;您需要为 chrome.contextMenus.onClicked
添加一个监听器.
Note that if you use an Event page, you cannot use the onclick
attribute; you'll need to add a listener to chrome.contextMenus.onClicked
instead.
这篇关于将上下文菜单项添加到 Chrome 扩展程序的浏览器操作按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!