W3cubDocs

/Web APIs

Navigation: back() method

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The back() method of the Navigation interface navigates backwards by one entry in the navigation history.

Syntax

js

back(options)

Parameters

options Optional

An options object containing the following properties:

info

Developer-defined information to be passed along to the navigate event, made available in NavigateEvent.info. This can be any data type. You might, for example, wish to display newly-navigated content with a different animation depending on how it was navigated to (swipe left, swipe right, or go home). A string indicating which animation to use could be passed in as info.

Return value

An object with the following properties:

committed

A Promise which will fulfill when the visible URL has changed and a new NavigationHistoryEntry has been created.

finished

A Promise which will fulfill when all promises returned by the intercept() handler are fulfilled. This is equivalent to the NavigationTransition.finished promise fulfilling, when the navigatesuccess event fires.

Either one of these promises rejects if the navigation has failed for some reason.

Exceptions

InvalidStateError DOMException

Thrown if the Navigation.currentEntry's NavigationHistoryEntry.index value is -1 or 0, i.e. either the current Document is not yet active, or the current history entry is the first one in the history, meaning that backwards navigation is not possible.

Examples

js

async function backHandler() {
  if (navigation.canGoBack) {
    await navigation.back().finished;
    // Handle any required clean-up after
    // navigation has finished
  } else {
    displayBanner("You are on the first page");
  }
}

async function forwardHandler() {
  if (navigation.canGoForward) {
    await navigation.forward().finished;
    // Handle any required clean-up after
    // navigation has finished
  } else {
    displayBanner("You are on the last page");
  }
}

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
back 102 102 No No 88 No 102 102 No 70 No 19.0

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Navigation/back