Comment puis-je vérifier pour voir si un attaquant histoire existe en Javascript? (La désactivation de la touche retour)

Obtenu un window.history.go(1) pour empêcher l'utilisateur de frapper le bouton de retour, mais je me demandais si je pouvais vérifier pour voir si un en avant de l'histoire, avant de le faire, donc je peux afficher un popup d'avertissement à l'utilisateur de ne pas appuyer sur le bouton retour.

Je sais que vous pouvez accéder à l'historique de la longueur, mais est-il un moyen d'obtenir la position actuelle dans la liste de l'historique? Ou une autre façon de le faire...

Si vous pensez que vous avez besoin pour briser le bouton retour de votre site est en train de faire quelque chose de très mal sur un niveau de base, que vous devriez essayer de corriger au lieu de perdre du temps sur ce sujet.
Oui, tout à fait, c'est un vilain hack pour un problème beaucoup plus important, mais si vous voulez réécrire les+ de 60 pages de code hérité j'ai été sous-évaluées avec une priorité de la tâche qui est marqué comme "urgence", puis être mon invité 😉
Envoyer votre urgence tyrans de cette page. Peut-être qu'ils verront la lumière.
La désactivation de la touche retour ou d'attacher une alternative maître-chien à sa fonctionnalité a un parfaitement acceptable de cas d'utilisation lors de l'utilisation des identificateurs de fragment pour la navigation à l'intérieur d'une page. Cela est particulièrement vrai dans une application web où les sections d'une page sont chargés à la place des pages entières. Je me rends compte que le commentaire de @bobince est vieux et les choses étaient différentes, mais dire que c'est mal sur un niveau de base pour faire quelque chose de différent lors de l'arrière bouton est cliqué n'a jamais été vrai. Même en '09, il dépend de la situation et de cas d'utilisation.

OriginalL'auteur NibblyPig | 2009-11-11