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

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 http ou https si seules les parties path, query et fragment de la nouvelle URL diffèrent de l'URL actuelle.
  • Vous pouvez intercepter les URL file si seules les parties query et fragment de la nouvelle URL diffèrent.
  • Pour les autres types d'URL, vous pouvez intercepter la navigation si seule la partie fragment diffè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

Compatibilité des navigateurs

Voir aussi