现在几个小时以来我一直困扰着这个问题,每次用户点击Google Chrome扩展程序时,是否有人知道如何显示上下文菜单。 我设法用我的default_popup显示菜单,但我发现我应该在上下文菜单上实现它。
这是图像:
我有以下代码
的manifest.json
{
"name": "Hello Toolbar",
"version": "1.0",
"manifest_version": 2,
"description": "A Toolbar that helps.",
"browser_action": {
"default_icon": "icon.png"
},
"background": {
"scripts": ["background.js"]
},
"permissions": [
"cookies",
"http://*/*",
"tabs",
"contextMenus"
]
}
background.js
chrome.browserAction.onClicked.addListener( function(tab){
chrome.contextMenus.create({"title": "Test parent item", "contexts": ['page']});
});
但它不起作用。
答案 0 :(得分:4)
我认为您对chrome.contextMenus
API的期望是错误的。它永远不会用于打开上下文菜单。它只能告诉Chrome在满足某些自定义条件时显示上下文菜单条目(请参阅create
method的文档以了解有关定义这些条件的信息)。
在下面的截屏视频中,我展示了代码的预期行为。
如果您希望在单击时显示“弹出窗口”,请使用清单文件的"default_popup"
部分中的"browser_action"
条目。然后,以下显示:
您可以使用CSS让弹出窗口看起来像“上下文菜单”。 Browser action documentation提供了some examples。