将上下文菜单项添加到Chrome扩展程序的浏览器操作按钮

Rud*_*die 16 google-chrome contextmenu google-chrome-extension

AG Chrome扩展程序可以进行" 浏览器操作 ".通常,当您单击它时,ext开发人员会显示选项,这意味着每个操作都需要2次点击,甚至是默认的99%的时间操作.Chrome本身添加了一个上下文菜单,其中包含以下几个选项:禁用ext,卸载ext,转到ext主页等.

我可以作为ext开发人员向该上下文菜单添加项目,这样我可以在正常/左/主鼠标单击下保持我的单击操作吗?

我知道chrome.contextMenus,但这仅适用于页面中的上下文菜单(请参阅属性' contexts ').

我在Chrome扩展程序开发指南中找不到它,但你知道的比我更多.

asd*_*asd 37

现在可以,的AdBlock Chrome扩展有它.下面是"浏览器操作中的上下文菜单"的工作示例.

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"
    }
}
Run Code Online (Sandbox Code Playgroud)

background.js:

chrome.contextMenus.removeAll();
chrome.contextMenus.create({
      title: "first",
      contexts: ["browser_action"],
      onclick: function() {
        alert('first');
      }
});
Run Code Online (Sandbox Code Playgroud)

请注意,如果您使用" 事件"页面,则无法使用该onclick属性; 你需要添加一个监听器chrome.contextMenus.onClicked.

  • Aaaaaw heellz yeeaah!棒极了。Chrome 每次更新都会做一些奇怪的事情,但它也增加了一些很棒的东西!很好的答案,满分!我不记得我想用这个做什么...... (2认同)
  • 我不知道为什么,但是“browser_action”在 contexts 属性中对我不起作用。我使用了“page_action”并且它有效。 (2认同)