hashchange
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'événement hashchange est déclenché lorsque l'identificateur de fragment de l'URL a changé (la partie de l'URL qui suit le symbole #, y compris le symbole # lui-même).
| Bulles | Oui | 
| Annulable | Non | 
| Objets cibles | Window | 
| Interface | HashChangeEvent | 
| Action par défaut | Aucune | 
Propriétés
| Propriété | Type | Description | 
|---|---|---|
| targetLecture seule | EventTarget | The browsing context ( window). | 
| typeLecture seule | DOMString | Type de l'évènement | 
| bubblesLecture seule | Boolean | Whether the event normally bubbles or not. | 
| cancelableLecture seule | Boolean | Whether the event is cancellable or not. | 
| oldURLLecture seule | String | The previous URL from which the window was navigated. | 
| newURL Lecture seule | String | 
Il existe plusieurs scripts de secours listés sur cette page. Fondamentalement, ces scripts vérifient le location.hash à intervalles réguliers. Voici une version qui n'autorise qu'un seul gestionnaire à être lié à la propriété window.onhashchange:
js
(function (window) {
  // Sortir si le navigateur implémente cet événement
  if ("onhashchange" in window) {
    return;
  }
  var location = window.location,
    oldURL = location.href,
    oldHash = location.hash;
  // Vérifie la hash de la barre d'adresse toutes les 100ms
  setInterval(function () {
    var newURL = location.href,
      newHash = location.hash;
    // Si le hash a été changé et qu'un gestionnaire a été lié...
    if (newHash != oldHash && typeof window.onhashchange === "function") {
      // exécute le gestionnaire
      window.onhashchange({
        type: "hashchange",
        oldURL: oldURL,
        newURL: newURL,
      });
      oldURL = newURL;
      oldHash = newHash;
    }
  }, 100);
})(window);
Spécifications
| Specification | 
|---|
| HTML> # event-hashchange> | 
| HTML> # handler-window-onhashchange> | 
Compatibilité des navigateurs
Chargement…