webNavigation.onCompleted
当文档(包括它所指向的资源)已经加载完并且已初始化时触发。该事件与 window 的 load
事件等价。
语法
js
browser.webNavigation.onCompleted.addListener(
listener, // 函数
filter // 可选对象
)
browser.webNavigation.onCompleted.removeListener(listener)
browser.webNavigation.onCompleted.hasListener(listener)
事件包含三个函数:
addListener(listener)
-
为此事件添加监听器。
removeListener(listener)
-
停止监听此事件。
listener
参数是要移除的监听器。 hasListener(listener)
-
检查是否已为此事件注册了
listener
。如果正在监听,则返回true
,否则返回false
。
addListener 语法
参数
listener
-
事件触发时调用的函数。该函数接收以下参数:
filter
可选-
object
。包含单个url
属性的对象,且这一属性是events.UrlFilter
对象的数组(Array
)。如果包含此参数,则仅当目标 URL 匹配数组中至少一个UrlFilter
时,事件才会触发。如果省略此参数,则事件会为所有导航触发。
附加对象
details
浏览器兼容性
示例
当目标 URL 的主机名包含“example.com”或以“developer”开头时,记录 onComplete
的目标 URL。
js
const filter = {
url: [{ hostContains: "example.com" }, { hostPrefix: "developer" }],
};
function logOnCompleted(details) {
console.log(`onCompleted:${details.url}`);
}
browser.webNavigation.onCompleted.addListener(logOnCompleted, filter);
示例扩展
备注:
此 API 基于 Chromium 的 chrome.webNavigation
API。该文档衍生自 Chromium 代码中的 web_navigation.json
。