在扩展加载而不是页面加载上运行contentscript

时间:2018-12-06 20:34:05

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

我有一个扩展程序,它会自动安装在域中。但是,域中的chrome配置为以特定页面开头。

扩展名配置为通过清单在此特定页面上加载内容脚本。当您浏览页面时,这可以完美地工作。但是,在第一次登录时,该页面已经打开,并且扩展名在其后加载/安装。它不会触发注入内容脚本。

如何确保扩展程序加载后立即注入内容脚本?

"content_scripts": [
  {
    "matches":["<all_urls>"],
    "js":[
      "content_script.js"
    ],
    "all_frames": true,
    "run_at": "document_end"
  }
],

现在的问题是,在访客模式下打开Chromebook时,新用户感到困惑,因为内容脚本第一次无法使用。

他们需要关闭并重新打开页面。

1 个答案:

答案 0 :(得分:0)

您需要自己处理这种情况,在手动安装后注入脚本。

在背景页面上,只需检查它是否第一次运行,然后在第一次运行时,您需要致电chrome.tabs.executeScript

chrome.tabs.executeScript({
  file: 'contentScript.js'
});

更多信息here