history.addUrl()
将访问给定 URL 的记录添加到浏览器的历史记录中。访问时间记录为调用时间,TransitionType
记录为“链接”。
这是一个异步函数,它返回一个 Promise
。
语法
js
let addingUrl = browser.history.addUrl(
details // object
)
参数
details
-
object
。包含要添加的 URL 的对象。url
-
string
。要添加的 URL。 title
可选-
string: 页面的标题。如果未提供,则标题将记录为
null
。 transition
可选-
history.TransitionType
。描述浏览器在此次访问中如何导航到该页面。如果未提供,则将记录“链接”类型的转换。 visitTime
可选-
number
或string
或object
。表示日期和时间的数值。可以表示为:Date
对象、ISO 8601 日期字符串 或自纪元以来的毫秒数。将访问时间设置为该值。如果未提供,则将记录当前时间。
返回值
当项目已添加时,Promise
将在没有参数的情况下完成。
浏览器兼容性
BCD 表格仅在浏览器中加载
示例
添加访问“https://example.org/”的记录,然后通过搜索历史记录中最近的项目并将其记录下来来检查新访问是否已记录
js
function onGot(results) {
if (results.length) {
console.log(results[0].url);
console.log(new Date(results[0].lastVisitTime));
}
}
browser.history
.addUrl({ url: "https://example.org/" })
.then(() =>
browser.history.search({
text: "https://example.org/",
startTime: 0,
maxResults: 1,
}),
)
.then(onGot);
添加访问“https://example.org”的记录,但将其 visitTime
设置为 24 小时前,并将 transition
设置为“typed”
js
const DAY = 24 * 60 * 60 * 1000;
function oneDayAgo() {
return Date.now() - DAY;
}
function onGot(visits) {
for (const visit of visits) {
console.log(new Date(visit.visitTime));
console.log(visit.transition);
}
}
browser.history
.addUrl({
url: "https://example.org/",
visitTime: oneDayAgo(),
transition: "typed",
})
.then(() =>
browser.history.getVisits({
url: "https://example.org/",
}),
)
.then(onGot);
注意:此 API 基于 Chromium 的 chrome.history
API。此文档源自 Chromium 代码中的 history.json
。