J'ai besoin de détecter d'une manière ou d'une autre que l'utilisateur a appuyé sur le bouton retour du navigateur et de recharger la page avec un rafraîchissement (rechargement du contenu et du CSS) en utilisant jquery.
Comment détecter une telle action via jquery ?
En effet, à l'heure actuelle, certains éléments ne sont pas rechargés si j'utilise le bouton retour du navigateur. Mais si j'utilise des liens dans le site Web, tout est rafraîchi et s'affiche correctement.
IMPORTANT !
Certaines personnes ont probablement mal compris ce que je veux. Je ne veux pas rafraîchir la page en cours. Je veux rafraîchir la page qui est chargée après avoir appuyé sur le bouton retour. Voici ce que je veux dire de manière plus détaillée :
- L'utilisateur visite la page1.
- alors qu'il se trouve sur la page 1, il clique sur un lien vers la page 2.
- il est redirigé vers la page2
- maintenant (partie importante !) il clique sur le bouton "retour" dans le navigateur parce qu'il veut revenir à la page 1.
- il est de retour sur la page 1 - et maintenant la page 1 est rechargée et quelque chose est alerté comme "Vous êtes de retour !".
0 votes
Au lieu de pirater le comportement normal de l'utilisateur, pourquoi n'essayez-vous pas de comprendre pourquoi votre code ne fonctionne pas au chargement de la page et que la page doit être rechargée ?
6 votes
@LelioFaieta Je change les classes pour montrer les changements. Si l'utilisateur clique sur quelque chose, la valeur change dans la base de données via ajax. Quand l'ajax est fait, la classe css change par exemple de
on
àoff
. Et c'est bon, c'est enregistré dans la base de données, les utilisateurs voient tout correctement. Maintenant il clique sur un autre lien. Par exemple la page "about us", n'est-ce pas ? Maintenant, il est sur la page à propos de nous. Il décide de revenir à la page précédente et clique sur le bouton retour du navigateur. Et quand il est de retour, il voit les changements sur la page comme le navigateur a montré la page (probablement un changement de navigateur) avant de déclencher l'ajax (classes on/off).1 votes
Utilisez-vous get ou post pour votre appel Ajax ?
2 votes
@LelioFaieta part2.. J'utilise aussi l'attribut data et cela n'a aucun effet. Tout serait parfait si la page était rechargée. Si j'appuie sur F5 sur cette page, les valeurs qu'il a modifiées via ajax sont affichées. Je pense que c'est un problème lié à la mise en cache du navigateur, lorsque la partie css/html n'est pas entièrement rechargée. Elle n'est rechargée qu'après avoir appuyé sur F5.
0 votes
@LelioFaieta
$.ajax({ url: url, method: 'post', processData: false, contentType: false, cache: false, dataType: 'json', data: formData, })
Pensez-vous que cela puisse se faire par ajax ? Ce serait formidable si c'était le cas.