扩展程序可以使用 HTML 覆盖网页来替换 Google Chrome 通常提供的网页。扩展程序可以包含针对以下任何网页的替换设置,但每个扩展程序只能替换一个网页:
- 书签管理器
- 用户选择“书签管理器”菜单项后显示的页面 (在 Mac 上),从“书签”菜单中打开“书签管理器”。您还可以 输入网址 chrome://bookmarks 即可访问此页面。
- 历史记录
- 用户从 Chrome 中选择“历史记录”菜单项后显示的页面 菜单或在 Mac 上是“历史记录”菜单中的“显示全部历史记录”。您也可以访问此页面 方法是输入网址 chrome://history。
- 打开新的标签页
- 用户创建新标签页或窗口时显示的页面。您还可以访问 此页面,输入网址 chrome://newtab。
以下屏幕截图显示了默认的“新标签页”页面,以及一个自定义的“新标签页”页面。
<ph type="x-smartling-placeholder">![默认的新标签页](https://developer.chrome.google.cn/static/docs/extensions/develop/ui/override-chrome-pages/image/the-default-tab-page-059d30739112b.png?authuser=9&hl=bg)
![自定义新标签页](https://developer.chrome.google.cn/static/docs/extensions/develop/ui/override-chrome-pages/image/a-custom-tab-page-d2b577b11a104.png?authuser=9&hl=bg)
如需尝试此操作,请参阅我们的替换示例。
无痕式窗口行为
在无痕式窗口中,扩展程序无法覆盖“新标签页”页面。如果无痕模式清单属性设为了 设置为“spanning”(默认值)。如需详细了解如何处理无痕式窗口,请参阅保存数据和无痕模式。
清单
使用以下代码在扩展程序清单中注册替换页面:
{
"manifest_version": 3,
"name": "My extension",
...
"chrome_url_overrides" : {
"PAGE_TO_OVERRIDE": "myPage.html"
},
...
}
将 PAGE_TO_OVERRIDE
替换成以下内容之一:
"bookmarks"
"history"
"newtab"
最佳做法
确保您的网页既简短又简短。
用户希望浏览器内置的页面能够立即打开。避免执行可能需要较长时间的操作 。具体而言,请避免同步访问数据库资源。发出网络请求时,请优先使用fetch()
,而不是XMLHttpRequest()
。为避免用户混淆,请为网页指定标题。
如果没有标题,网页标题将默认为网址。使用 HTML 文件中的<title>
标记指定标题。请注意,新标签页会先将键盘焦点放在地址栏上。
不要让键盘焦点默认位于页面的其他部分。打造您的专属新标签页。
避免创建新标签页,因为用户可能会将其与 Chrome 的默认新标签页相混淆。
示例
请参阅替换示例。