Saltar al contenido

¿Cómo evitar que un navegador retroceda/adelante en el historial cuando se desplaza horizontalmente?

Recabamos en distintos sitios para así traerte la respuesta a tu duda, si tienes alguna duda puedes dejarnos un comentario y te contestaremos con gusto, porque estamos para servirte.

Solución:

history.pushState(null, null, location.href);
window.onpopstate = function(event) 
    history.go(1);
;

Demostración: http://jsfiddle.net/DerekL/RgDBQ/show/

No podrá volver a la página web anterior, a menos que envíe spam al botón Atrás o mantenga presionado el botón Atrás y elija la entrada anterior.

Nota: onpopstate (o evento onbeforeunload) no parece funcionar en iOS.

Entonces pensé que, dado que creé una aplicación web, ¿por qué no solicitar al usuario los cambios no guardados que evitarán que el usuario pierda los cambios no guardados o termine en la página anterior o siguiente en el historial del navegador?

Aquí está la solución si alguien más se encuentra con este problema como lo hice yo:

window.onbeforeunload = function(e) 
    return 'Ask user a page leaving question here';
; 

Si está en una Mac, esto se debe a los gestos del panel táctil.

System Preferences -> Trackpad -> More Gestures. 

No es la solución JS que está buscando, pero si solo quiere evitarlo usted mismo, puede desactivar la función.

Puntuaciones y comentarios

Recuerda mostrar este enunciado si te fue útil.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *