Fired when the browser is about to start a navigation event.
browser.webNavigation.onBeforeNavigate.addListener(
listener
,
// function
filter
// optional object
)
浏览器
.
webNavigation
.
onBeforeNavigate
.
removeListener
(
listener
)
浏览器
.
webNavigation
.
onBeforeNavigate
.
hasListener
(
listener
)
Events have three functions:
addListener(callback)
Adds a listener to this event.
removeListener(listener)
Stop listening to this event. The
listener
argument is the listener to remove.
hasListener(listener)
校验是否
listener
is registered for this event. Returns
true
if it is listening,
false
否则。
callback
Function that will be called when this event occurs. The function will be passed the following arguments:
details
对象
. Details about the navigation event.
filter
可选
对象
. An object containing a single property
url
, which is an
数组
of
events.UrlFilter
objects. If you include this parameter, then the event will fire only for transitions to URLs which match at least one
UrlFilter
in the array. If you omit this parameter, the event will fire for all transitions.
tabId
integer
. The ID of the tab in which the navigation is about to occur.
url
string
. The URL to which the given frame will navigate.
processId
integer
. The ID of the process in which this tab is being rendered (This property is
not supported on Firefox
and it is
deprecated on Chrome
).
frameId
integer
. Frame in which the navigation is about to occur.
0
indicates that navigation happens in the tab's top-level browsing context, not in a nested
<iframe>
. A positive value indicates that navigation happens in a nested iframe. Frame IDs are unique for a given tab and process.
parentFrameId
integer
. ID of this frame's parent. Set to
-1
if this is a top-level frame.
timeStamp
编号
. The time when the browser is about to start the navigation, in
milliseconds since the epoch
.
BCD tables only load in the browser
Logs the target URLs for
onBeforeNavigate
, if the target's hostname contains "example.com" or starts with "developer".
const filter = {
url:
[
{hostContains: "example.com"},
{hostPrefix: "developer"}
]
}
function logOnBefore(details) {
console.log(`onBeforeNavigate to: ${details.url}`);
}
browser.webNavigation.onBeforeNavigate.addListener(logOnBefore, filter);
注意:
This API is based on Chromium's
chrome.webNavigation
API. This documentation is derived from
web_navigation.json
in the Chromium code.
Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.
最后修改: , 由 MDN 贡献者