chrome扩展执行脚本不使用content_script

时间:2017-09-21 22:21:23

标签: javascript google-chrome-extension content-script

目标是将内容脚本注入Google Chrome扩展程序中的eventpage脚本,而不会在单击按钮时弹出菜单。当前错误消息是

tabs.executeScript: Cannot access a chrome:// URL

在content_script中提取了一个获取请求,如果您对此有任何提示,我们将不胜感激。

活动页面内容脚本

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

清单

{
  "manifest_version": 2,

  "name": "Seneca One add Bookmark",
  "description": "Posts URL to database.",
  "version": "2.0",
  "background": {
    "scripts": ["eventPage.js"],
    "persistent": false
  },
  "browser_action": {
    "default_icon": "Favicon@2x.png",
    "default_title": "Add bookmark"
  },
  "content_scripts": [
  {
    "matches": ["http://*/*"],
    "js": ["content_script.js"]
  }
],
  "permissions": [
    "activeTab",
    "storage",
    "tabs",
    "http://*/*",
    "https://*/*"
  ]
}

1 个答案:

答案 0 :(得分:0)

当他说你在chrome扩展程序上打开一个脚本时,@ wxxom是正确的。 使用浏览器操作创建一个popup.html,然后让它运行然后立即关闭。确保您的popup.js位于清单中的default_script:popup.js中。 然后,您可以在清单中创建背景{persistent:true},以使您的脚本在每个页面上运行后台并监听您的提取。所以你所寻找的效果基本相同。你单击popup.html / popup.js运行fetch / icon的图标会立即消失,而你的背景js正在后台回答中运行。