当前位置: 首页 > 面试题库 >

谷歌浏览器新标签页的网址是什么以及如何将其从manifest.json中排除

尉迟宇定
2023-03-14
问题内容

我目前正在构建一个简单的Google
chrome扩展程序来恶作剧我的兄弟。该扩展程序简单地删除了旧页面,并用从“您没有互联网”页面上复制的HTML和CSS替换了它,从本质上讲,使用户认为他们在使用时没有互联网。以下是注入所有新页面的内容脚本:

var hed = document.head;
var bod = document.body;
document.head.parentElement.removeChild(document.head);
document.body.parentElement.removeChild(document.body);
document.write(/*Copy of "no internet" page source here*/);

该脚本可以完美运行。我不希望更改发生的唯一页面是google chrome新标签页。通常排除页面的方法是在内容脚本下的Extensions
manifest.json文件中指定它。这是我原始的manifest.json设置:

{
    "manifest_version": 2,

    "name": "No Internet Extention",
    "description": "Make people with this extention think they have no internet",
    "version": "1.0",

    "content_scripts": 
    [
        {
          "matches": ["*://*/*"],
          "js": ["bup.js"]
        }
    ],

    "permissions": 
    [
        "activeTab",
        "https://ajax.googleapis.com/"
    ]
}

我目前已在manifest.json文件content_scripts部分中尝试了以下设置,以排除无效的Chrome新标签页:

"matches": ["http://*/*", "https://*/*"]

我认为这将排除它,因为google产品表单上的此页面告诉我“新标签”页面的URL是“
chrome:// newtab”,而不是HTTP:或HTTPS:协议。

我也尝试过:

"matches": ["*//*/*"]
"exclude_matches": ["chrome://newtab"]

"matches": ["*//*/*"]
"exclude_matches": ["chrome://newtab/*"]

"matches": ["*//*/*"]
"exclude_matches": ["*://newtab/*"]

"matches": ["*//*/*"]
"exclude_globs": ["chrome://newtab"]

这些都不起作用,内容脚本仍在新选项卡页面上执行。我认为问题的根源在于我的“新标签” URL不正确。我对排除网页的研究在这里完成: Google
Content Scripts
Page。真正的问题是:是否有人知道google新标签页的正确网址,或者如何将其排除在清单文件中?


问题答案:

请注意,我从2016年起的原始答案中的大部分内容不再适用。

  • 从Chrome v61开始,“新建标签页”上不再允许使用内容脚本。

  • 新标签页的URL已更改为chrome-search://local-ntp/local-ntp.html

  • 如果要创建自定义的“新标签页”,请使用替代页。

我决定删除此答案的原始内容,以免误导他人。原始答案可以在编辑历史记录中查看。



 类似资料:
  • 今天,我观察到一个有趣的行为。我正在使用windows XP-sp3操作系统 当我在Google Chrome中打开新选项卡时 为什么会出现这样的行为?是否由于系统调用?子进程是否立即调用? 它只发生在谷歌Chrome还是所有其他浏览器都以类似的方式运行?

  • 我正在尝试排除Visual Studio代码中< code>Explore选项卡上的几个文件夹。为此,我将下面的< code>jsconfig.json添加到我的项目的根目录中: 但是文件夹在目录树中仍然可见。 我做错了什么?还有其他选择吗?

  • 问题内容: 这是困扰我的CSS小问题之一。Stack Overflow周围的人们如何垂直对齐 以及他们 始终如一的 跨浏览器 ?每当我在Safari中正确对齐它们(通常在上使用)时,它们在Firefox和IE中就完全关闭了。在Firefox中进行修复,不可避免地将Safari和IE弄乱了。每次编写表单时,我都会在此上浪费时间。 这是我使用的标准代码: 我通常使用Eric Meyer的重置,因此表单

  • 我正在阅读网络分析,遇到了GTM和GA。 似乎GA是谷歌提供的一项服务,它生成关于网站流量的报告和统计数据。根据我有限的理解,为了生成这些报告,我们需要在结束时执行某种类型的标记。 在GTM中,我们还需要在我们的网站上添加一些标签。 所以如果两个GA

  • 我发现谷歌标签管理器(GTM)周围的谷歌留档在帮助我弄清楚哪些比特去哪里方面很糟糕。 据我所知,GTM要求你把一个

  • 问题内容: 我一直在一个网站上工作,我想在浏览器标签中添加一个小图标。 我该如何在HTML中执行此操作以及需要在代码中放置它的位置(例如标头)?我有一个徽标文件,希望将其转换为图标。 相关:浏览器标签上的HTML设置图像。 问题答案: 实际上,有两种向网站添加图标的方式。 只需将以下代码添加到元素中: 大多数浏览器均支持 PNG图标,但IE <= 10除外 。为了向后兼容,您可以使用ICO图标。