我正在努力制作一个元素突出显示器chrome扩展。 工作流程: - 单击浏览器图标 - 点击页面 - 高亮显示点击的元素
使用manifest_version在浏览器操作中运行内容脚本时遇到麻烦:2 当我检查出现的弹出窗口时,它说:
拒绝执行内联脚本,因为它违反了以下内容 内容安全策略指令:“script-src'self' chrome-extension-resource:“(popup.html:5)。
popup.html中的内联脚本位于哪里且脚本不起作用
我有:
的manifest.json:
{
"browser_action": {
"default_icon": "images/icon.gif",
"default_popup": "popup.html"
},
"manifest_version": 2,
"description": "MEH!",
"name": "My First Extension",
"permissions": [
"tabs", "http://*/*", "https://*/*"
],
"version": "0.1"
}
popup.html:
<html>
<head>
</head>
<body>
<script>
chrome.tabs.executeScript(null,{
code:"document.body.style.backgroundColor='red'"
});
</script>
<div id='msg' style="width:300px">...</div>
</body>
</html>
非常感谢任何帮助
答案 0 :(得分:44)
事实证明,在我在这里看到错误之前,我无法正确阅读错误
显然,清单v2不允许你有内联脚本,所以你只需要
src="path_to_the_file.js"
答案 1 :(得分:0)
延伸到@ tak3r的答案和@ Doug的评论:
需要将内联脚本更改为外部脚本。
移动:
<script>
chrome.tabs.executeScript(null,{
code:"document.body.style.backgroundColor='red'"
});
</script>
到名为main.js
的新文件中,删除<script></script>
代码
在HTML的<head></head>
中包含以下内容
<script type="text/javascript" src="main.js"></script>