内容脚本是否可以访问newtab页面?

Hai*_* Ai 14 google-chrome chromium google-chrome-extension

更新

感谢@kofifus提供的信息,Chrome从61开始明确禁止其默认新标签页上的内容脚本

以前

假设我有以下示例扩展名,它将test在控制台中输出.

的manifest.json

{
  "name": "Test",
  "version": "1.0",
  "manifest_version": 2,
  "content_scripts": [
    {
      "matches": [
        "<all_urls>"
      ],
      "js": [
        "content.js"
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

content.js

console.log('test');
Run Code Online (Sandbox Code Playgroud)

上面的扩展会在chrome://newtab页面中运行良好吗?

一些有用的信息:

  1. 我知道默认情况下chrome扩展程序无法访问chrome://页面,我们可以通过更改此行为chrome://flags/#extensions-on-chrome-urls

  2. chrome://newtab实际上是一个网址https://www.google.co.jp/_/chrome/newtab?espv=2&ie=UTF-8,所以不应该受到上述限制.

  3. 有许多鼠标手势扩展可用,如crxMouse,它们在chrome://newtab页面上运行良好

  4. 还有一些声音说它不允许注入内容脚本chrome://newtab,例如,@ Xan在这个答案下面的评论 在此输入图像描述这位作者的情况 在此输入图像描述

因此它在不同设备(或设置?)中的不同行为看起来很奇怪.是否有关于内容脚本是否可以在chrome://newtab页面中运行的官方声明?或者是否有一个设置我们可以改变这种行为?

kof*_*fus 6

Chrome 自 61 起明确禁止其默认新标签页上的内容脚本