Ajouter des écouteurs d'événement pour les différentes étapes d'une navigation. Une navigation se compose d'un cadre dans le navigateur passant d'une URL à l'autre, généralement (mais pas toujours) en réponse à une action de l'utilisateur comme cliquer sur un lien ou entrer une URL dans la barre d'adresse.

Comparable à l'API webRequest: Les navigations entrainent le navigateur à faire des requetes web, mais l'API webRequest travaille au niveau inférieur de la couche HTTP, contrairement à l'API webNavigation qui travaille directement au niveau de l'interface utilisateur du navigateur elle-même.

Chaque evenement correspond directement à un état précis dans la navigation. La séquence des évenements est comme suit:

Chaque navigation est une transition d'URL dans un cadre de navigateur particulier. Le cadre du navigateur est identifié par un ID d'onglet et un ID de trame. Le cadre peut être le contexte de navigation de niveau supérieur dans l'onglet ou peut être un contexte de navigation imbriqué implémenté en tant qu'iframe.

L'appel addListener() de chaque événement accepte un paramètre de filtre facultatif. Le filtre spécifiera un ou plusieurs modèles d'URL, et l'événement ne sera alors déclenché que pour les navigations dans lesquelles l'URL cible correspond à l'un des modèles.

L'écouteur d'événement onCommittedreçoit deux propriétés supplémentaires : un TransitionType indiquant la cause de la navigation (par exemple, parce que l'utilisateur a cliqué sur un lien ou parce que l'utilisateur a sélectionné un signet), et un  TransitionQualifier fournissant plus d'informations sur la navigation.

Pour utiliser cette API, vous devez avoir la permission "webNavigation".

Types

webNavigation.TransitionType
Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.
webNavigation.TransitionQualifier
Informations supplémentaires sur une transition.

Functions

webNavigation.getFrame()
Récupère des informations sur un cadre particulier. Ce cadre peut être le cadre de niveau supérieur dans un onglet ou un iframe imbriqué, et est identifié de manière unique par un ID d'onglet et un ID de frame.
webNavigation.getAllFrames()

Étant donné un ID d'onglet, récupère des informations sur tous les cadres qu'il contient.

Events

webNavigation.onBeforeNavigate

Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.

webNavigation.onCommitted
Lancé lorsqu'une navigation est validée. Au moins une partie du nouveau document a été reçue du serveur et le navigateur a décidé de passer au nouveau document.
webNavigation.onDOMContentLoaded
Lancé lorsque l'événement DOMContentLoaded est déclenché dans la page.
webNavigation.onCompleted
Lancé lorsqu'un document, y compris les ressources auxquelles il fait référence, est complètement chargé et initialisé. Ceci est équivalent à l'événement de chargement du DOM.
webNavigation.onErrorOccurred
Lancé lorsqu'une erreur se produit et que la navigation est annulée. Cela peut se produire si une erreur réseau s'est produite ou si l'utilisateur a interrompu la navigation.
webNavigation.onCreatedNavigationTarget
Lancé lorsqu'une nouvelle fenêtre ou un nouvel onglet dans une fenêtre existante est créé pour héberger une navigation: par exemple, si l'utilisateur ouvre un lien dans un nouvel onglet.
webNavigation.onReferenceFragmentUpdated
Lancé si l' identificateur de fragment d'une page a été modifié.
webNavigation.onTabReplaced

Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).

webNavigation.onHistoryStateUpdated
Lancé lorsque la page a utilisé l' API d'histoirique pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur.

Compatibilité du navigateur

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxOperaFirefox pour Android
TransitionQualifierChrome Support complet OuiEdge Aucun support NonFirefox Support complet 48
Notes
Support complet 48
Notes
Notes 'server_redirect' is limited to top-level frames and 'client_redirect' is not supplied when redirections are created by JavaScript.
Opera Support complet 17Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes 'server_redirect' is limited to top-level frames and 'client_redirect' is not supplied when redirections are created by JavaScript.
TransitionTypeChrome Support complet OuiEdge Aucun support NonFirefox Support complet 48
Notes
Support complet 48
Notes
Notes 'link' and 'auto_subframe' are partially supported as the default transition type for top-level frames and subframes respectively. 'reload' and 'form_submit' are supported. All other properties are unsupported.
Opera Support complet 17Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes 'link' and 'auto_subframe' are partially supported as the default transition type for top-level frames and subframes respectively. 'reload' and 'form_submit' are supported. All other properties are unsupported.
getAllFramesChrome Support complet OuiEdge Support complet 14Firefox Support complet 47Opera Support complet 17Firefox Android Support complet 48
getFrameChrome Support complet OuiEdge Support complet 14Firefox Support complet 47Opera Support complet 17Firefox Android Support complet 48
onBeforeNavigateChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onCommittedChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onCompletedChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onCreatedNavigationTargetChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If a blocked popup is unblocked by the user, the event is still not sent.
Edge Support complet 14Firefox Support complet 54
Notes
Support complet 54
Notes
Notes If the filter parameter is empty, Firefox raises an exception.
Notes If a blocked popup is unblocked by the user, the event is then sent.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If a blocked popup is unblocked by the user, the event is still not sent.
Firefox Android Support complet 54
Notes
Support complet 54
Notes
Notes If the filter parameter is empty, Firefox raises an exception.
Notes If a blocked popup is unblocked by the user, the event is then sent.
Notes This event is only sent in the 'window.open()' case.
onDOMContentLoadedChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onErrorOccurredChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onHistoryStateUpdatedChrome Support complet OuiEdge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 47Opera Support complet 17Firefox Android Support complet 48
onReferenceFragmentUpdatedChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes If the filter parameter is empty, Chrome matches all URLs.
Edge Support complet 14
Notes
Support complet 14
Notes
Notes Filtering is not supported.
Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
Opera Support complet 17
Notes
Support complet 17
Notes
Notes If the filter parameter is empty, Opera matches all URLs.
Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Filtering is supported from version 50.
Notes If the filter parameter is empty, Firefox raises an exception.
onTabReplacedChrome Support complet OuiEdge Support complet 14Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Although you can add listeners for this event, it will never fire because the underlying functionality is not supported.
Opera Support complet 17Firefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Although you can add listeners for this event, it will never fire because the underlying functionality is not supported.

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Example extensions

Remerciements :

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

Étiquettes et contributeurs liés au document

Contributeurs à cette page : sxilderik, hellosct1, tiimax
Dernière mise à jour par : sxilderik,