You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome扩展在chrome://类URL无法运行的问题排查与解决方案咨询

问题解答

规则适用性

Chrome确实限制扩展在chrome://协议页面(尤其是chrome://extensions/这类浏览器核心设置页面)运行内容脚本,这是出于安全与浏览器稳定性的强制规则,你的扩展遇到的情况完全符合这一限制。不过chrome://newtab属于特殊场景,有合规的实现方式。

解决办法

1. 适配chrome://newtab(Manifest V3)

Chrome允许扩展替换默认新标签页,这是让功能在新标签页生效的正规方案:

  • 修改manifest.json,添加chrome_url_overrides字段指定自定义新标签页文件,同时排除明确不支持的chrome://extensions/*页面:
{
  "manifest_version": 3,
  "name": "Quotr",
  "description": "A Quote Generator Chrome Extension",
  "version": "1.0",
  "permissions": [
    "tabs",
    "activeTab"
  ],
  "action": {
    "default_popup": "popup/popup.html",
    "default_icon": "icons/QuotrPicture.png"
  },
  "content_scripts": [
    {
      "matches": [
        "<all_urls>"
      ],
      "exclude_matches": [
        "chrome://extensions/*"
      ],
      "js": [
        "scripts/content-script.js",
        "quote-display/quote-display.js"
      ]
    }
  ],
  "chrome_url_overrides": {
    "newtab": "newtab/newtab.html"
  }
}
  • 创建newtab/newtab.html文件,将原本内容脚本里的浮层生成、名言展示逻辑直接集成到这个页面(或引入对应JS文件)。自定义新标签页属于扩展自身页面,不受chrome://页面的限制。

2. 消除不必要的报错

在内容脚本开头添加协议判断,跳过chrome://页面的逻辑执行,避免抛出连接异常:

if (window.location.protocol === 'chrome:') {
  return;
}
// 原本的内容脚本业务逻辑

关键说明

chrome://extensions/这类浏览器核心设置页面,Chrome完全禁止扩展注入内容脚本,没有绕过的合规方式,只能放弃在这类页面运行的需求。而自定义新标签页的方式,不仅能实现需求,还能提供比浮层注入更流畅的用户体验。

内容的提问来源于stack exchange,提问作者Safwan Khan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 04:05:55