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
back(options)
Paramètres
optionsFacultatif-
Un objet d'options contenant les propriétés suivantes :
infoFacultatif-
L'information définie par le·la développeur·euse à passer à l'évènement
navigateet rendue disponible dansNavigateEvent.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 queinfo.
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 nouvelleNavigationHistoryEntrya été créée. finished-
Une promesse (
Promise) qui se complète lorsque toutes les promesses retournées par le gestionnaireintercept()sont complétées. Cela équivaut à la promesseNavigationTransition.finishedse complétant, lorsque l'évènementnavigatesuccessse déclenche.
Chaque promesse se rompt si la navigation a échoué pour une raison quelconque.
Exceptions
InvalidStateErrorDOMException-
Levée si la valeur de
Navigation.currentEntry'sNavigationHistoryEntry.indexest -1 ou 0, c'est-à-dire soit que leDocumentactuel 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 leDocumentactuel est en cours de déchargement.
Exemples
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> |