chrome.history
内容导航
chorme.history 模块被用于和浏览器所访问的页面记录交互。你可以添加、删除、查询浏览器的历史记录。如果您想覆写历史页面,请查看覆写特定页。
Manifest
您必须在扩展Manifest文件中声明“history”权限,以便使用history API。如下所示:
{ "name": "My extension", ... "permissions": [ "history" ], ... }
过渡类型
History API用一种过渡类型来描述浏览器是如何访问的特定的URL。例如:如果URL是在用户访问页面时,点击链接跳转访问的,此时的过渡类型为“link”。
如下的列表详细定义了各种过渡类型。
过渡类型 | 描述 |
---|---|
“link” | 用户通过点击页面中的链接,跳转至本URL。 |
“typed” | 用户通过地址栏输入网址,来访问本URL。这种类型也适用于显式的导航动作。与之相反,你可以参阅generated,它适用于用户没看到(不知道)网址URL的情况。 |
“auto_bookmark” | 用户通过界面的推荐到达本URL。例如,通过点击菜单项打开的页面。 |
“auto_subframe” | 子框架导航。这种类型是指那些非顶层框架自动加载的内容。例如,如果一个页面由许多包含广告的子框架构成,那些广告链就拥有这种过渡类型。用户可能没有意识到页面中的这些内容是个单独的框架,所以他们也可能根本没有在意这些URL(请查阅 manual_subframe)。 |
“manual_subframe” | 此种类型是为用户显式请求的子框架导航以及在前进/后退列表中的生成导航入口的子框架导航所设置。由于用户更关心所请求框架被加载的效果,因此显式请求的框架可能会比自动载入的框架更为重要。 |
“generated” | 用户通过在地址栏输入,而选择一个不像网址的入口到达的URL页面。例如,匹配结果中可能包含Google搜索结果页的URL, 但是它可能以“用Google搜索……”的形式展现。这类导航和 typed 导航是有差异的,因为用户没有输入或者看到最终的URL。请参阅 keyword。 |
“start_page” | 页面是在命令行中被指定(打开),或者其本身就是起始页。 |
“form_submit” | 用户提交的表单。请注意,某些情况,诸如表单运用脚本来提交,不属于此种类型。 |
“reload” | 用户通过点击刷新按钮或者在地址栏输入回车键来刷新页面属于此种类型。会话重置,重开标签页都属于此种类型。 |
“keyword” | URL通过可替代的关键字,而不是默认的搜索引擎产生。请查阅keyword_generated。 |
“keyword_generated” | 相应由关键字生成的访问。请查阅keyword。 |
示例
请查看 history 样例目录 和 history API 测试目录 中如何使用此API的例子。如果想获取更多开发范例及源代码,请查看代码范例。
API说明:chrome.history
类型
HistoryItem
VisitItem
方法
search
chrome.history.search(object query, function callback)
搜索访问历史中,匹配条件的页面最后一次访问的数据。
Parameters
Callback
回调函数 callback 应当如下定义:
function(array of HistoryItem results) {...};
- results ( array of HistoryItem )
getVisits
chrome.history.getVisits(object details, function callback)
addUrl
chrome.history.addUrl(object details, function callback)
deleteUrl
chrome.history.deleteUrl(object details, function callback)
deleteRange
chrome.history.deleteRange(object range, function callback)
deleteAll
chrome.history.deleteAll(function callback)
事件
onVisited
使用 chrome.history 的代码范例
- 输入URL的历史记录 – 读取历史记录,并且显示通过输入URL方式来进入网页次数最多的前十条。