Lorsque l'utilisateur revient à l'historique 1, comment puis-je le détecter? Et puis, alerter "l'utilisateur a cliqué en arrière!"Comment détecter si l'utilisateur a cliqué sur le bouton "retour"
En utilisant binds (et de préférence jquery)
Lorsque l'utilisateur revient à l'historique 1, comment puis-je le détecter? Et puis, alerter "l'utilisateur a cliqué en arrière!"Comment détecter si l'utilisateur a cliqué sur le bouton "retour"
En utilisant binds (et de préférence jquery)
Vous pouvez généralement pas (restriction de sécurité du navigateur). Vous pouvez dire si l'utilisateur navigue loin de la page (onbeforeunload, onunload fire) mais vous ne pouvez pas dire où ils sont allés, sauf si vous avez configuré votre page pour l'autoriser.
HTML5 introduit l'API d'historique HTML5; Dans les navigateurs conformes, l'événement onpopstate se déclenche si l'utilisateur revient à une page antérieure sur votre site.
Que pensez-vous de cela? http://stackoverflow.com/questions/10462511/is-there-a-way-using-jquery-to-detect-the-back-button-being-pressed-cross-browse –
Vous pouvez construire des pages de cette façon ce retour est détectable, mais la seule façon de savoir où ils se sont rendus est de savoir s'il leur est arrivé de naviguer vers une autre page de votre site (où vous contrôlez le JavaScript). Comment construire un tel scénario? Lorsque l'utilisateur visite "PageA.htm", vous les envoyez immédiatement à "PageB.htm" et s'il charge à nouveau "PageA.htm", vous pouvez "deviner" qu'il a cliqué sur "Retour". – EricLaw
essayer:
window.onbeforeunload = function (evt) {
var message = 'Are you sure you want to leave?';
if (typeof evt == 'undefined') {
evt = window.event;
}
if (evt) {
evt.returnValue = message;
}
return message;
}
OnBeforeUnload se déclenchera également si l'utilisateur accède à un autre site. – EricLaw
est-il possible de ne pas afficher le message d'alerte? –
window.onpopstate=function()
{
alert("Back/Forward clicked!");
}
Cela ne se déclenchera pas si vous visitez ** une autre ** page, puis revenez à cette page. – Pacerier
Sur la page que vous regardez, vous pouvez ajouter ce morceau de code à l'événement onLoad
pour les retourner la page qu'ils étaient.
if(history.length>0)history.go(+1)
Si vous voulez que l'alerte puis faire
if(history.length>0)alert("the user clicked back!")
Ne fonctionne pas pour les sites Web d'une seule page. – ShrekOverflow
Ne fonctionne pas pour n'importe quoi. 'history.length> 0' vous donnera vrai, même si c'est une toute nouvelle page. Il vous donne la [longueur totale de l'histoire] (http://stackoverflow.com/a/9757655/632951) ** y compris ** les pages en avant et en arrière. – Pacerier
Voici les étapes pour détecter retour cliquez sur le bouton
Inscrivez-vous une souris vers le bas événement sur le corps $('body').on('mousedown' ,'on all li');
2. Maintenant, définissez une variable lorsque l'événement mousedown se produit.
3.Vérifiez cette variable lorsque votre emplacement change.
IF Chages variables true cela signifie la liste cliquée autrement backbutton
Ce travail dans mon usecase .Cette solution peut aide les autres, car il dépend de la conception de l'application
Alex, vous venez de poser une question similaire http://stackoverflow.com/questions/2008765/in-javascript-perferably-jquery-how-do-i-add-something-to-the-url-when-the-user Ne pas spammer. –