Chrome扩展程序:无法在页面上下文中的chrome.tabs.executeScript中运行代码

时间:2012-10-27 10:59:47

标签: google-chrome google-chrome-extension

我使用此后台脚本background.js创建了Google Chrome扩展程序:

chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.executeScript(tab.id, {code:"document.body.style.background='red !important';"}); // doesn't work
  chrome.tabs.executeScript(tab.id, {code:"alert('hello');"}); // runs alert
});

我想在网页的上下文中运行document.body.style.background='red !important'; 我该怎么办?

manifest.json

{
  "name": "Test",
  "version": "1.0",
  "manifest_version": 2,
  "description": "Test",
  "browser_action": { "default_icon": "icon.png" },
  "background": { "scripts": ["background.js"] },
  "permissions": ["tabs", "*://*/*"]
}

2 个答案:

答案 0 :(得分:1)

平原直。将https://*/*添加到权限。

答案 1 :(得分:1)

后台实际上期望一切,如果你想改变颜色使用backgroundColor而不需要给予!重要,因为你在所有东西都被加载后注入。

因此,以下更改可能有效。请试试。

chrome.tabs.executeScript(tab.id, {code:"document.body.style.backgroundColor='red';"});