NavigateEvent : propriété canIntercept
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 propriété en lecture seule canIntercept de l'interface NavigateEvent retourne true si la navigation peut être interceptée et que son URL peut être réécrite, ou sinon false.
Il existe plusieurs règles concernant le moment où une navigation peut être interceptée. Par exemple :
- Vous ne pouvez pas intercepter les navigations inter-origines.
- Vous pouvez intercepter les URL
httpouhttpssi seules les partiespath,queryetfragmentde la nouvelle URL diffèrent de l'URL actuelle. - Vous pouvez intercepter les URL
filesi seules les partiesqueryetfragmentde la nouvelle URL diffèrent. - Pour les autres types d'URL, vous pouvez intercepter la navigation si seule la partie
fragmentdiffère.
Voir la spécification pour une explication plus détaillée sur le moment où un Document peut voir son URL réécrite (angl.), y compris un tableau d'exemples.
Valeur
Une valeur booléenne — true si la navigation peut être interceptée, sinon false.
Exemples
js
navigation.addEventListener("navigate", (event) => {
// Certaines navigations, par exemple les navigations inter-origines,
// ne peuvent pas être interceptées. Laissez le navigateur les gérer normalement.
if (!event.canIntercept) {
return;
}
// N'intercepte pas les navigations par fragment ou les téléchargements.
if (event.hashChange || event.downloadRequest !== null) {
return;
}
event.intercept({
handler() {
if (event.formData) {
processFormDataAndUpdateUI(event.formData, event.signal);
} else {
doSinglePageAppNav(event.destination, event.signal);
}
},
});
});
Spécifications
| Spécification |
|---|
| HTML> # dom-navigateevent-canintercept-dev> |