webNavigation.onHistoryStateUpdated
Wird ausgelöst, wenn die Seite die History-API verwendet hat, um die URL in der Adressleiste des Browsers zu aktualisieren. Alle zukünftigen Ereignisse für diesen Frame verwenden die aktualisierte URL.
Syntax
browser.webNavigation.onHistoryStateUpdated.addListener(
listener, // function
filter // optional object
)
browser.webNavigation.onHistoryStateUpdated.removeListener(listener)
browser.webNavigation.onHistoryStateUpdated.hasListener(listener)
Ereignisse haben drei Funktionen:
addListener(listener)
-
Fügt diesem Ereignis einen Listener hinzu.
removeListener(listener)
-
Stoppt das Zuhören dieses Ereignisses. Das Argument
listener
ist der zu entfernende Listener. hasListener(listener)
-
Prüfen, ob
listener
für dieses Ereignis registriert ist. Gibttrue
zurück, wenn es zuhört, andernfallsfalse
.
addListener-Syntax
Parameter
listener
-
Die Funktion, die aufgerufen wird, wenn dieses Ereignis auftritt. Die Funktion erhält dieses Argument:
filter
Optional-
object
. Ein Objekt, das eine einzige Eigenschafturl
enthält, die einArray
vonevents.UrlFilter
Objekten ist. Wenn Sie diesen Parameter einschließen, wird das Ereignis nur bei Übergängen zu URLs ausgelöst, die mindestens einemUrlFilter
im Array entsprechen. Wenn Sie diesen Parameter weglassen, wird das Ereignis bei allen Übergängen ausgelöst.
Zusätzliche Objekte
details
tabId
-
integer
. Die ID des Tabs, in dem die Navigation stattfinden wird. url
-
string
. Die URL, zu der der gegebene Frame navigieren wird. processId
Optional Veraltet-
integer
. Dieser Wert wird in modernen Browsern nicht gesetzt. Wenn er gesetzt war, repräsentierte er die ID des Prozesses, der den Renderer für diesen Tab ausführt. frameId
-
integer
. Frame, in dem die Navigation stattfinden wird.0
zeigt an, dass die Navigation im obersten Browsing-Kontext des Tabs und nicht in einem verschachtelten<iframe>
erfolgt. Ein positiver Wert zeigt an, dass die Navigation in einem verschachtelten iframe erfolgt. Frame-IDs sind eindeutig für einen bestimmten Tab und Prozess. parentFrameId
-
integer
. ID des übergeordneten Rahmens dieses Frames. Auf-1
gesetzt, wenn dies ein oberster Frame ist. timeStamp
-
number
. Die Zeit, zu der die URL von der History-API geändert wurde, in Millisekunden seit der Epoche. transitionType
-
transitionType
. Der Grund für die Navigation: Zum Beispiel"link"
, wenn der Benutzer auf einen Link geklickt hat. transitionQualifiers
-
Array
vontransitionQualifier
. Zusätzliche Informationen über die Navigation: Zum Beispiel, ob es eine Weiterleitung vom Server oder Client gab.
Beispiele
Protokolliert die Ziel-URLs und zusätzliche Übergangsinformationen für onHistoryStateUpdated
, wenn der Hostname der Ziel-URL "example.com" enthält oder mit "developer" beginnt.
const filter = {
url: [{ hostContains: "example.com" }, { hostPrefix: "developer" }],
};
function logOnHistoryStateUpdated(details) {
console.log(`onHistoryStateUpdated: ${details.url}`);
console.log(`Transition type: ${details.transitionType}`);
console.log(`Transition qualifiers: ${details.transitionQualifiers}`);
}
browser.webNavigation.onHistoryStateUpdated.addListener(
logOnHistoryStateUpdated,
filter,
);
Browser-Kompatibilität
Hinweis:
Diese API basiert auf Chromiums chrome.webNavigation
API. Diese Dokumentation stammt aus web_navigation.json
im Chromium-Code.