We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

L'événement hashchange est déclenché lorsque le hash de l'url change (cf. location.hash).
 

Syntaxe

window.onhashchange = funcRef;

ou

<body onhashchange="funcRef();">

ou

window.addEventListener("hashchange", funcRef, false);

Paramètres

funcRef
Une référence à une fonction.

Exemples

if ("onhashchange" in window) {
    alert("Le navigateur prend en charge l'événement hashchange!");
}

function locationHashChanged() {
    if (location.hash === "#somecoolfeature") {
        somecoolfeature();
    }
}

window.onhashchange = locationHashChanged;

L'événement hashchange

Lorsque l'observateur d'événement déclenche l'événement hashchange il passe en paramêtres les arguments suivante:

Paramêtre Type Description
newURL DOMString Le nouvel URL où le navigateur est.
oldURL DOMString L'ancien URL où le navigateur se trouvait.

Une solution autour de event.newURL et event.oldURL

//insérez ce bout de code au début de votre code pour observer les changements de hash dans l'URL
if(!window.HashChangeEvent)(function(){
	var lastURL=document.URL;
	window.addEventListener("hashchange",function(event){
		Object.defineProperty(event,"oldURL",{enumerable:true,configurable:true,value:lastURL});
		Object.defineProperty(event,"newURL",{enumerable:true,configurable:true,value:document.URL});
		lastURL=document.URL;
	});
}());

 

Spécifications 

Spécifications Statut Commentaires
HTML Living Standard
La définition de 'GlobalEventHandlers' dans cette spécification.
Standard évolutif  
HTML 5.1
La définition de 'GlobalEventHandlers' dans cette spécification.
Recommendation  
HTML5
La définition de 'GlobalEventHandlers' dans cette spécification.
Recommendation  

Compatibilité des navigateurs

Nous convertissons les données de compatibilité dans un format JSON. Ce tableau de compatibilité utilise encore l'ancien format car nous n'avons pas encore converti les données qu'il contient. Vous pouvez nous aider en contribuant !

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support de base 5.0 3.6 (1.9.2)

8.0

oldURL/newURL attributes are not supported.

10.6 5.0
Fonctionnalité Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support de base 2.2 1.0 (1.9.2) 9.0 11.0 5.0

 

Lire également

Étiquettes et contributeurs liés au document

Contributeurs à cette page : romuleald, Restimel, electrotiti
Dernière mise à jour par : romuleald,