0

私はそれを機能させる方法を理解できません。私のスクリプトはそれ自体で動作します。ただし、background.js では機能しません。ユーザーがアイコンをクリックした場合にのみGoogle拡張機能が機能するようにしたいので、ファイルbackground.jsを作成してコードを配置しました:

chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.executeScript(null, {file: "change_content.js"});
});

ここに私のmanifest.json:

{
  "manifest_version": 2,
  "name": "Name",
  "description": "change content.",
  "version": "3.0",


  "browser_action": {

    "default_icon": "icon.png"
  },
   "content_scripts": [
    {
      "matches": ["http://*/*"],
      "js": ["change_content.js"]
    }
  ],


    "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "permissions": [
  "tabs", "http://*/*"
]

}

これが change_content.js です。

var oldSource = document.documentElement.innerHTML;
document.body.innerHTML = changeContent(oldSource);
function changeContent(source){
.....
}
4

2 に答える 2

-2
chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.executeScript(null, {file: "change_content.js"});
});

「null」を使用すると、tabId - null のタブを検索している可能性があるため、エラーが発生しているように感じます。代わりにこれを試してみてください。

chrome.tabs.executeScript({file: "change_content.js"});
于 2013-07-20T16:54:20.810 に答える