J'ai un clic qui change les choses sur la page lorsque vous cliquez dessus. Je me demandais s'il y avait un moyen de déclencher un effet lorsque vous appuyez sur le bouton de retour du navigateur
Vous pouvez en quelque sorte le faire en utilisant l'événement popstate:
window.onpopstate = function() {
alert("pop!");
}
ou dans jQuery :
$(window).on('popstate', function(event) {
alert("pop");
});
Cependant, cela se déclenchera également lors de la navigation en avant, pas seulement en arrière.
$(function() {
if (window.history && window.history.pushState) {
window.history.pushState('', null, './');
$(window).on('popstate', function() {
// alert('Back button was pressed.');
document.location.href = '#';
});
}
});
Vous pouvez simplement déclencher l'événement «popState» dans JQuery, par exemple:
$(window).on('popstate', function(event) {
alert("pop");
});
C'est assez pour ce que vous avez demandé… mais voici quelques événements supplémentaires sur la fenêtre pour aller avec…
$(window).on('pushstate', function(event) {
alert("Push");
}); // This one pushes u to forward page through history...
window.history.replaceState(); //work exactly like pushstate bt this one replace the history instead of creating new one...
window.history.backward(); // To move backward through history, just fire this event...
window.history.forward();// To move forward through history ...
window.history.go(-1); // Go back to one page(or whatever value u passed) through history
window.history.go(1); // Go forward to one page through history..