Hola, traté de usar el siguiente javascript para advertir a los usuarios.
window.onbeforeunload = function() { return "Are you sure you wish to leave?"; };Pero debo asegurarme de que el botón Atrás esté presionado, parece llamar esto cuando cambia la URL.
Gracias
puedes jugar con el navegador de eventos popstate activado cuando cambia el historial del navegador
window.addEventListener('popstate', function(event) { alert('you click on back or forward button'); }El evento popstate se activa cuando cambia el historial actual:
Trate de mirar a través de estas respuestas aquí.
Entonces, en resumen, y para las personas que no necesariamente usan un botón Atrás en la página o una matriz para almacenar el historial:
document.onmouseover = function() { //User's mouse is inside the page. window.innerDocClick = true; } document.onmouseleave = function() { //User's mouse has left the page. window.innerDocClick = false; } window.onhashchange = function() { if (window.innerDocClick) { //Your own in-page mechanism triggered the hash change } else { //Browser back button was clicked } }Y ahí lo tienes. una forma simple en tres partes de detectar el uso del botón Atrás frente a los elementos de la página con respecto a la navegación hash.
Su alerta iría a la sección else del controlador window.onhashchange .