Navigation : méthode traverseTo()
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 traverseTo() de l'interface Navigation navigue vers un NavigationHistoryEntry identifié par la clé key fournie.
Syntaxe
traverseTo(key)
traverseTo(key, options)
Paramètres
key-
La clé (
key) d'unNavigationHistoryEntryvers lequel naviguer. optionsFacultatif-
Un objet options contenant les propriétés suivantes :
infoFacultatif-
L'information définie par le·la développeur·euse à transmettre à l'évènement
navigate, rendue disponible dansNavigateEvent.info. Ça peut être de n'importe quel type de données. Vous pouvez, par exemple, souhaiter afficher le contenu nouvellement navigué avec une animation différente selon la manière dont il a été navigué (glisser vers la gauche, glisser vers la droite ou aller à l'accueil). Une chaîne de caractères indiquant quelle animation utiliser peut être passée dansinfo.
Valeur de retour
Un objet avec les propriétés suivantes :
committed-
Une promesse (
Promise) qui est complétée lorsque l'URL visible a changé et qu'une nouvelleNavigationHistoryEntrya été créée. finished-
Une promesse (
Promise) qui est complétée lorsque toutes les promesses retournées par le gestionnaireintercept()sont complétées. Cela équivaut à la promesseNavigationTransition.finishedqui est complétée lorsque l'évènementnavigatesuccessse déclenche.
Chacune de ces promesses est rompue si la navigation a échoué pour une raison quelconque.
Exceptions
InvalidStateErrorDOMException-
Levée si la valeur
NavigationHistoryEntry.indexdeNavigation.currentEntryest -1, ce qui signifie que leDocumentactuel n'est pas encore actif, ou si la liste de l'historique de navigation ne contient pas deNavigationHistoryEntryavec la clé définie, ou si leDocumentactuel est en cours de déchargement.
Exemples
>Configurer le bouton d'accueil
function initBoutonAccueil() {
// Obtient la clé de la première entrée chargée
// afin que l'utilisateur·ice puisse toujours revenir à cette vue.
const { key } = navigation.currentEntry;
backToHomeButton.onclick = () => {
navigation.traverseTo(key);
};
}
// Intercepte les évènements de navigation, tels que les clics sur les
// liens, et les remplace par des navigations sur une seule page
navigation.addEventListener("navigate", (event) => {
event.intercept({
async handler() {
// Navigue vers une vue différente,
// mais le bouton « accueil » fonctionne toujours.
},
});
});
Spécifications
| Spécification |
|---|
| HTML> # dom-navigation-traverseto-dev> |