Deshabilitar el botón «atrás» del navegador con Javascript

Esto fue una ñapa que hice en su día para un curso en el que era alumno. Uno de los profesores se pispó de que en los exámenes de la plataforma virtual los alumnos podían hacer todo el examen, ver la autocorrección de la plataforma, volver hacia atrás pulsando el botón de retroceder del navegador y repetirlo. Como había buen rollo y sabía que yo era programador me preguntó si había una forma de bloquear el botón «retroceder» del navegador… y se lo arreglé con esto:

//primero añadía esta línea de javascript
<script type="text/javascript">
    window.history.forward();
    function sinVueltaAtras(){ window.history.forward(); }
</script>
//y en el body invocaba la función en la carga
<BODY onload="sinVueltaAtras();" onpageshow="if (event.persisted) sinVueltaAtras();" onunload="">

¿Qué hace este código? Pues no deshabilita exactamente el botón atrás, lo que hace es que la página automáticamente se vaya hacia delante. Al ponerlo en la cabecera de la página que cargaba las preguntas hacía que si el alumno retrocedía al cargar la página automáticamente volviera a la última.

La mejor solución habría sido que la plataforma no realizara la autocorrección hasta haber enviado el examen… pero eso ya se lo habría tenido que cobrar.

Anuncio publicitario

Un comentario en “Deshabilitar el botón «atrás» del navegador con Javascript

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.