Google chrome extension 显示页面上的弹出窗口\u操作
没有显示弹出窗口时,我遗漏了什么 在扩展文件夹中,我有四个文件。我将该文件夹作为扩展名加载。我可以看到图标,但当我点击它时,弹出窗口不会显示。为什么?Google chrome extension 显示页面上的弹出窗口\u操作,google-chrome-extension,Google Chrome Extension,没有显示弹出窗口时,我遗漏了什么 在扩展文件夹中,我有四个文件。我将该文件夹作为扩展名加载。我可以看到图标,但当我点击它时,弹出窗口不会显示。为什么? content\u script.js:空(刚刚添加以便加载扩展) icon.png:当我加载扩展时,它会显示出来 manifest.json: { “名称”:“弹出式poc”, “版本”:“1.4”, “说明”:“简单弹出示例”, “内容脚本”:[ { “匹配项”:[“”], “js”:[“content_script.js”] } ], “页
content\u script.js
:空(刚刚添加以便加载扩展)icon.png
:当我加载扩展时,它会显示出来manifest.json
:{
“名称”:“弹出式poc”,
“版本”:“1.4”,
“说明”:“简单弹出示例”,
“内容脚本”:[
{
“匹配项”:[“”],
“js”:[“content_script.js”]
}
],
“页面操作”:{
“默认名称”:“显示地图”,
“默认图标”:“icon.png”,
“默认弹出窗口”:“popup.html”
},
“清单版本”:2
}
popup.html
:
弹出窗口
这是尸体
将清单.json中的页面操作
替换为“浏览器操作
”。您应该能够以这种方式在所有页面上看到弹出窗口
它可能与以下内容重复:
但我似乎没有足够的声望点来标记它
仅针对特定主机URL模式的弹出窗口
(编辑)
如果希望弹出窗口仅在某些站点上可用(例如,仅在Google上可用),则需要在清单中指定declarativeContent
权限,并在后台脚本中进行一些设置
因此,您的manifest.json
将如下所示:
{
“名称”:“弹出式poc”,
“版本”:“1.4”,
“说明”:“简单弹出示例”,
“权限”:[“declarativeContent”],
“内容脚本”:[
{
“匹配项”:[“https://www.google.com/*"],
“js”:[“content_script.js”]
}
],
“背景”:{
“脚本”:[“background.js”],
“持续”:假
},
“页面操作”:{
“默认名称”:“显示地图”,
“默认图标”:“icon.png”,
“默认弹出窗口”:“popup.html”
},
“清单版本”:2
}
您的background.js
如下所示:
chrome.runtime.onInstalled.addListener(函数(){
chrome.declarativeContent.onPageChanged.removeRules(未定义,函数(){
chrome.declarativeContent.onPageChanged.addRules([{
条件:[新建chrome.declarativeContent.PageStateMatcher]({
pageUrl:{hostEquals:'www.google.com'},
})
],
操作:[新建chrome.declarativeContent.ShowPageAction()]
}]);
});
});
此代码主要来自。但我需要的是页面操作,而不是浏览器操作。我需要更改图标。谢谢,我应该如何匹配所有URL?我知道了,只要删除“pageUrl:{hostEquals:'www.google.com'}”或所有规则,就可以了。谢谢