web api instance method
Navigation: updateCurrentEntry() method
The updateCurrentEntry() method of the Navigation interface updates the state of the currentEntry; used in cases where the state change will be independent of a navigation or reload.
Syntax
updateCurrentEntry(options)
Parameters
options- : An options object containing the following properties:
state- : Developer-defined information to be stored in the associated
NavigationHistoryEntryonce the navigation is complete, retrievable viagetState(). This can be any data type. You might, for example, wish to store a page visit count for analytics purposes, or store UI state details so the view can be shown exactly as the user last left it. Any data stored instatemust be structured-cloneable.
- : Developer-defined information to be stored in the associated
- : An options object containing the following properties:
Return value
None (undefined).
Exceptions
DataCloneErrorDOMException- : Thrown if the
stateparameter had values included in it that are not structured-cloneable.
- : Thrown if the
InvalidStateErrorDOMException- : Thrown if the
currentEntryisnull, i.e., there is no current history entry. This could occur for example if the current page isabout:blank.
- : Thrown if the
Examples
You could use something like the following to update the open/closed state of a <details> element so that the state can be restored when reloading the page or navigating back from somewhere else.
detailsElem.addEventListener("toggle", () => {
navigation.updateCurrentEntry({ state: { detailOpen: detailsElem.open } });
});
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.