Navigation: currententrychange event
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Das currententrychange
Ereignis der Navigation
Schnittstelle wird ausgelöst, wenn sich Navigation.currentEntry
geändert hat.
Dieses Ereignis wird ausgelöst bei:
-
Navigationen im selben Dokument (z. B.
back()
odertraverseTo()
). -
Ersetzungen (d.h. ein Aufruf von
navigate()
mithistory
aufreplace
gesetzt). -
Anderen Aufrufen, die den Zustand des Eintrags ändern (z. B.
updateCurrentEntry()
oder die History APIHistory.replaceState()
).
Dieses Ereignis wird ausgelöst, nachdem die Navigation abgeschlossen ist, was bedeutet, dass die sichtbare URL geändert wurde und das NavigationHistoryEntry
-Update erfolgt ist. Es ist nützlich, um die Nutzung älterer API-Funktionen wie der hashchange
oder popstate
Ereignisse zu ersetzen.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignishandler-Eigenschaft.
addEventListener("currententrychange", (event) => { })
oncurrententrychange = (event) => { }
Ereignistyp
Ein NavigationCurrentEntryChangeEvent
. Erbt von Event
.
Beispiele
Berichterstattung von Navigationsdaten:
navigation.addEventListener("currententrychange", () => {
const data = navigation.currentEntry.getState();
submitAnalyticsData(data.analytics);
});
Einrichten eines ereignisbasierten Eintrags:
navigation.addEventListener("currententrychange", () => {
navigation.currentEntry.addEventListener("dispose", genericDisposeHandler);
});
Spezifikationen
Specification |
---|
HTML # event-currententrychange |