Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Navigation : méthode back()

Baseline 2026
Nouvellement disponible

Depuis janvier 2026, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.

La méthode back() de l'interface Navigation navigue en arrière d'une entrée dans l'historique de navigation.

Syntaxe

js
back(options)

Paramètres

options Facultatif

Un objet d'options contenant les propriétés suivantes :

info Facultatif

L'information définie par le·la développeur·euse à passer à l'évènement navigate et rendue disponible dans NavigateEvent.info. Cela peut être de n'importe quel type de données. Par exemple, vous pouvez souhaiter afficher le contenu nouvellement navigué avec une animation différente selon la manière dont il a été navigué (glisser à gauche, glisser à droite ou aller à l'accueil). Une chaîne de caractères indiquant quelle animation utiliser peut être passée en tant que info.

Valeur de retour

Un objet avec les propriétés suivantes :

committed

Une promesse (Promise) qui se complète lorsque l'URL visible a changé et qu'une nouvelle NavigationHistoryEntry a été créée.

finished

Une promesse (Promise) qui se complète lorsque toutes les promesses retournées par le gestionnaire intercept() sont complétées. Cela équivaut à la promesse NavigationTransition.finished se complétant, lorsque l'évènement navigatesuccess se déclenche.

Chaque promesse se rompt si la navigation a échoué pour une raison quelconque.

Exceptions

InvalidStateError DOMException

Levée si la valeur de Navigation.currentEntry's NavigationHistoryEntry.index est -1 ou 0, c'est-à-dire soit que le Document actuel n'est pas encore actif, soit que l'entrée d'historique actuelle est la première de l'historique, ce qui signifie que la navigation en arrière n'est pas possible, ou si le Document actuel est en cours de déchargement.

Exemples

js
async function gestionEnArriere() {
  if (navigation.canGoBack) {
    await navigation.back().finished;
    // Gère tout nettoyage nécessaire après
    // que la navigation est terminée
  } else {
    displayBanner("Vous êtes sur la première page");
  }
}

async function gestionEnAvant() {
  if (navigation.canGoForward) {
    await navigation.forward().finished;
    // Gère tout nettoyage nécessaire après
    // que la navigation est terminée
  } else {
    displayBanner("Vous êtes sur la dernière page");
  }
}

Spécifications

Spécification
HTML
# dom-navigation-back-dev

Compatibilité des navigateurs

Voir aussi