在Chrome扩展程序中禁用父ContextMenu

时间:2017-08-30 22:48:19

标签: google-chrome-extension contextmenu

如果我有一个带有子菜单的Chrome Extension context menu,如何禁用父级,以便在启用父级之前无法访问子菜单项?

chrome.contextMenus.create({
  id: "parentMenu",
  title: "Parent Menu",
  contexts: ["browser_action"],
  enabled: false
});

// Create a submenu with two radio buttons

chrome.contextMenus.create({
  parentId: "parentMenu",
  title: "Submenu1",
  contexts: ["browser_action"],
  type: "radio",
  checked: true,
  onclick: function (evt) {}
});

chrome.contextMenus.create({
  parentId: "parentMenu",
  title: "Submenu2",
  contexts: ["browser_action"],
  type: "radio",
  onclick: function (evt) {}
});

即使parentMenu被标记为已禁用,它也不会禁用。当我禁用子菜单时,那些会按预期禁用。

enter image description here

1 个答案:

答案 0 :(得分:0)

我猜测子菜单是不可能的。

解决方法是删除所有子菜单项,使根菜单项成为正常条目,然后禁用它。你失去了箭头,但达到了禁用状态。

考虑一些其他UI方法;这看起来有些笨重。