hashchange
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 |
---|---|---|
target Lecture seule |
EventTarget |
The browsing context (window ). |
type Lecture seule |
DOMString |
Type de l'évènement |
bubbles Lecture seule |
Boolean |
Whether the event normally bubbles or not. |
cancelable Lecture seule |
Boolean |
Whether the event is cancellable or not. |
oldURL Lecture 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 Standard # event-hashchange |
HTML Standard # handler-window-onhashchange |
Compatibilité des navigateurs
BCD tables only load in the browser