我目前可以在Google Chrome扩展程序中创建一个contextMenu(右键菜单),如下所示:
chrome.contextMenus.create({
title: "The name to click",
contexts:["selection"],
onclick: theFunctionToRun
});
但是,我希望能够添加子菜单的contextMenu。我正在实现10个可以通过右键单击菜单调用的工具,但是希望有2个菜单,每个菜单中有5个工具,基于它们的分类。
我无法在线或在有关此文档的文档中找到任何信息。我很惊讶其他人也不想要这个功能,所以也许我只是在寻找错误的东西。
是否可以创建子菜单的contextMenu?如果是这样,我该怎么做?
我想到了。我需要在父菜单中指定一个id,然后在其他菜单中引用父ID,如下所示:
chrome.contextMenus.create({
title: "The name of the parent menu",
id: "parent",
contexts:["selection"]
});
chrome.contextMenus.create({
title: "The first action to click",
parentId: "parent",
contexts:["selection"],
onclick: theFirstFunction
});
chrome.contextMenus.create({
title: "The second action to click",
parentId: "parent",
contexts:["selection"],
onclick: theSecondFunction
});
它可能有点简单。首先,我将拥有并说这不是我的原始代码,但子菜单位是。我基于它的代码来自:https://www.youtube.com/watch?v=DH7QVll30XQ和他的Github repo https://github.com/gopinav/Chrome-Extensions。这里'我如何更改事件页面只是添加了另一个上下文菜单项。父菜单标题是Manifest上的名称,我只是为了确定而改变了。我希望这对某些人有用。
var priceItem = {
"id": "saveAsPrice",
"title": "Save as Price",
"contexts": ["selection"]
};
var nameItem = {
"id": "saveAsName",
"title": "Save as Name",
"contexts": ["selection"]
};
chrome.contextMenus.create(priceItem);
chrome.contextMenus.create(nameItem);