2

我已经搜索过这个但没有运气。我想为 Google Chrome 扩展中的每个父菜单创建两个子菜单。但是我的代码只在上下文为“页面”时创建子菜单。这是我目前正在尝试的代码:

var contexts = ["page","link","image"];
        for (var i = 0; i < contexts.length; i++) {
      var context = contexts[i];
      var title = "";

      title = "Do something with this "+context;
      var id = chrome.contextMenus.create({"title": title, "contexts":[context]});
      var child1 = chrome.contextMenus.create({"title": "someThing1", "parentId": id, "onclick": onClickFunc});
      var child2 = chrome.contextMenus.create({"title": "someThing2", "parentId": id, "onclick": onClickFunc});
}

任何想法??

4

1 回答 1

0

很确定这是在这里回答的:https ://stackoverflow.com/a/18198476/1678601

简而言之,create 方法有一个名为“contexts”的可选参数,默认为“page”。

这是文档:http: //developer.chrome.com/extensions/contextMenus.html#method-create

因此,为了演示如何将解决方案应用于您的代码(这只是上面的一部分):

var child1 = chrome.contextMenus.create({"title": "someThing1", "parentId": id, "onclick": onClickFunc, "contexts": ["page","link","image"]});
var child2 = chrome.contextMenus.create({"title": "someThing2", "parentId": id, "onclick": onClickFunc, "contexts": ["page","link","image"]});
于 2013-08-13T01:40:39.727 回答