当我单击扩展按钮时,popup.html 文件没有打开。 chrome 扩展还通过 main.html 文件更改了 newTab。但是弹出窗口没有显示,“检查弹出窗口”按钮也没有显示。为什么会这样?
list .json:
{
"name": "Name",
"description": "Add description",
"version": "0.1.9.2",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": [
"activeTab"
],
"chrome_url_overrides" : {
"newtab": "main.html"
},
"background": {
"scripts": ["jquery-2.2.3.min.js", "background.js"],
"persistent": false
},
"icons": { "16": "icon16.png",
"24": "icon24.png",
"32": "icon32.png",
"48": "icon48.png",
"64": "icon64.png",
"128": "icon128.png",
"256": "icon256.png",
"512": "icon512.png"
},
"permissions": [
"activeTab",
"https://ajax.googleapis.com/",
"storage",
"tabs",
"http://*/*",
"https://*/*"
],
"browser_action": {
"default_title": "app"
},
"manifest_version": 2
}
Popup.html:
<!doctype html>
<html>
<head>
<style type="text/css">
body {
width: 200px;
height: 200px;
}
</style>
</head>
<body>
TEXT TEXT TEXT
</body>
</html>
最佳答案
您的 list 中有 2 个 browser_action
部分:
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
...
"browser_action": {
"default_title": "app"
},
解析 list 时,这不是语法错误*,而是第二个错误覆盖了第一个错误。所以你不再有 default_popup
。
您应该将它们合并为一个键:
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "app"
},
* 从技术上讲,JSON standard 不会禁止重复键:应该但不是必须没有重复的键;因此,implementation-dependent .
关于google-chrome-extension - Popup.html 未在 Chrome 扩展中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46492232/