1

在清单中:

{
"manifest_version": 2,
"version": "0.1",
"name": "test",
"description": "test",
"content_scripts": [
{
    "matches": ["http://www.roblox.com/*", "https://www.roblox.com/*"],
    "js": ["jquery.js", "ecyInject.js"]
},
{
    "matches": ["http://www.roblox.com/Economy"],
    "js": ["jquery.js", "ecyPage.js"]
}
],

"permissions": [
    "notifications", "tabs", "http://www.roblox.com/"
],

"background": {
    "page": "main.html"
}
}

然后这是“main.html”

<html>
<head>
    <script src="jquery.js"></script>
    <script src="Services.js"></script>
    <script>
        chrome.tabs.create({url:("http://www.google.com/")});
    </script>
</head>

<body>

</body>
</html>

为什么它没有打开 www.google.com 的主页?扩展的其余部分有效,但它只是“chrome.tabs.create”部分不起作用。我的扩展确实有标签权限,我看不出有什么问题。

编辑

“拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“script-src 'self' chrome-extension-resource:”。”

我刚刚看到那个错误,无论如何要防止它?^^^^

4

1 回答 1

0

不允许 Chrome 扩展程序抓取不在扩展程序内或列为资源的脚本(正如错误所说的有点令人困惑)。您可以定义 CSP(内容安全策略)来更改此行为。默认值如下所示:

"content_security_policy": "script-src 'self' chrome-extension-resource: ; object-src 'self'",

你可能想要这样的东西:

"content_security_policy": "script-src 'self' chrome-extension-resource: http://www.google.com ; object-src 'self'",

将该行粘贴到您的 manifest.json 中:-)

更多示例可以在这里找到

于 2013-01-31T23:47:55.737 回答