webNavigation.onHistoryStateUpdated
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 werden die aktualisierte URL verwenden.
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 einen Listener zu diesem Ereignis hinzu.
removeListener(listener)
-
Stellt das Lauschen auf dieses Ereignis ein. Das
listener
-Argument ist der zu entfernende Listener. hasListener(listener)
-
Prüft, ob
listener
für dieses Ereignis registriert ist. Gibttrue
zurück, wenn es lauscht, andernfallsfalse
.
addListener-Syntax
Parameter
listener
-
Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Der Funktion wird dieses Argument übergeben:
filter
Optional-
object
. Ein Objekt, das eine einzelne Eigenschafturl
enthält, die einArray
vonevents.UrlFilter
Objekten ist. Wenn Sie diesen Parameter einschließen, wird das Ereignis nur für Übergänge zu URLs ausgelöst, die mindestens einemUrlFilter
im Array entsprechen. Wenn Sie diesen Parameter weglassen, wird das Ereignis für alle Übergänge 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 angegebene Frame navigieren wird. processId
Optional Veraltet-
integer
. Dieser Wert wird in modernen Browsern nicht gesetzt. Wenn er gesetzt war, stellte er die ID des Prozesses dar, der den Renderer für diesen Tab ausführte. frameId
-
integer
. Frame, in dem die Navigation stattfinden wird.0
bedeutet, dass die Navigation im obersten Browserkontext des Tabs und nicht in einem verschachtelten<iframe>
stattfindet. Ein positiver Wert bedeutet, dass die Navigation in einem verschachtelten iframe stattfindet. Frame-IDs sind eindeutig für einen gegebenen Tab und Prozess. timeStamp
-
number
. Die Zeit, zu der die URL durch die History API geändert wurde, in Millisekunden seit der Epoche. transitionType
-
. Der Grund für die Navigation: zum BeispieltransitionType
"link"
, wenn der Benutzer auf einen Link geklickt hat. transitionQualifiers
-
Array
vontransitionQualifier
. Zusätzliche Informationen über die Navigation: zum Beispiel, ob es eine Server- oder Client-Weiterleitung gab.
Browser-Kompatibilität
BCD tables only load in the browser
Beispiele
Protokolliert die Ziel-URLs und zusätzliche Übergangsinformationen für onHistoryStateUpdated
, wenn der Ziel-URL-Hostname "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,
);
Hinweis:
Diese API basiert auf der chrome.webNavigation
-API von Chromium. Diese Dokumentation ist abgeleitet von web_navigation.json
im Chromium-Code.