添加子contextMenus
问题描述:
我目前可以在谷歌浏览器扩展程序创建一个文本菜单(右键菜单)如下:添加子contextMenus
chrome.contextMenus.create({
title: "The name to click",
contexts:["selection"],
onclick: theFunctionToRun
});
不过,我想能够添加的文本菜单子菜单。我正在实现10个可通过右键单击菜单调用的工具,但希望根据其分类在每个菜单中包含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回购 https://github.com/gopinav/Chrome-Extensions。这里'我如何改变事件页面只是添加了另一个上下文菜单项。 父菜单标题是我为了确定而更改的清单上的名称。我希望这对某些人有用。
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);