替代页面
替代页面是一种使用来自您的扩展程序的 HTML 文件替换 Google Chrome 默认提供页面的方式。除了 HTML,替代页面通常还包含 CSS 和 JavaScript 代码。
扩展程序可以替换以下任一页面:
- 书签管理器:当用户选择 Chrome 菜单中(或 Mac 系统上的书签菜单中)的书签管理器菜单项时出现的页面。您也可以输入 URL chrome://bookmarks 进入该页面。
- 历史记录:当用户选择 Chrome 菜单中的历史记录(或者 Mac 系统上历史记录菜单中的显示所有历史记录)时出现的页面。您也可以输入 URL chrome://history 进入该页面。
- “打开新的标签页”页面:当用户创建新标签页或新窗口时出现的页面。您也可以输入 URL chrome://newtab 进入该页面。
注意:一个扩展程序只能替换一个页面。例如,一个扩展程序不能既替换书签管理页面,又替换历史记录页面。
隐身窗口是特殊对待的,“打开新的标签页”页面不能在隐身窗口中替换。只要清单文件中的 incognito 属性设置为 "spanning"(也是默认值),其他替代页面将在隐身窗口中工作。有关您应该如何对待隐身窗口的更多细节,请参见概述中的保存数据和隐身模式。
以下屏幕截图展现了缺省的“打开新的标签页”页面和自定义的“打开新的标签页”页面。
缺省的“打开新的标签页”页面 | 替代的“打开新的标签页”页面 |
清单文件
如下所示在扩展程序的清单文件中注册替代页面:
{ "name": "我的扩展程序", ... "chrome_url_overrides" : { "pageToOverride": "myPage.html" }, ... }
将 pageToOverride
替换为以下值之一:
-
bookmarks
-
history
-
newtab
提示
要想创建一个高效的替代页面,请遵循这些指导:
-
您的网页应该小而快。
用户期望内置的浏览器页面能够立即打开,请不要进行任何花费时间可能较长的操作,例如,不要同步地获取网络或数据库资源。 -
您的网页应该包含标题。
否则用户可能会看到网页 URL 而感到疑惑。如下是一个指定标题的例子:<title>新标签页</title>
-
不要假定网页具有键盘焦点。
当用户创建新标签页时总是地址栏先获得焦点。 -
不要试图模仿默认的“打开新的标签页”网页。
创建与默认“打开新的标签页”网页类似(具有最常访问的网站、最近关闭的标签页、提示、主题背景图像等等)的修改版本所需的 API 还不存在。在这些 API 得到支持之前您最好还是考虑一些完全不同的新想法。
例子
请参见替代页面示例。