此问题已在此处有答案:
Can you access chrome:// pages from an extension?(4个答案)
7天前关闭
x1c 0d1x的数据
大家好,我正在构建一个chrome扩展,它可以根据用户的情绪生成一个报价。
我的chrome扩展涉及到使用一个content-script来修改用户的活动浏览器窗口,通过使用DOM和JS在屏幕上插入一个覆盖层。上面的图片显示了这一点。
然而,我注意到我的chrome扩展不适用于基于chrome://的URL(例如:chrome://extensions/和chrome://newtab)。
它会抛出以下异常:
第一个月
它在其他任何地方都有效,并且不会抛出此异常。
我在一篇类似的StackOverflow文章chrome extension do not work after execute extension in url chrome://中看到,通过一些在线研究,Google Chrome不允许运行其行为涉及修改Chrome设置和功能的扩展程序。
这是否适用于我的扩展的情况?有什么办法能让我避开这个吗?我在下面发布了我的chrome扩展名的manifest.json文件。理想情况下,我希望我的扩展至少能够在chrome://newtab上运行。我真的很感激你对这件事的看法。
manifest.json
{
"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>"
],
"js": [
"scripts/content-script.js",
"quote-display/quote-display.js"
]
}
]
}
字符串
1条答案
按热度按时间w8rqjzmb1#
不允许在任何
chrome://
页面newtab
上包含内容脚本。https://codereview.chromium.org/2978953002/的数据。同一来源:
希望修改新标签页的扩展应该通过使用chrome url覆盖[1] API来完成
所以我想最接近的解决方法是创建一个自定义的
newtab
着陆页(有扩展可以做到这一点),并允许您的脚本在那里运行。