2011-05-11 5 views
6

De hecho, necesito esto como una característica de seguridad: el tema de mi sitio es confidencial (violencia doméstica): tenemos un área de seguridad en el sitio y si hace clic, la persona se retira del sitio a un sitio 'seguro'.¿Cómo detengo a las personas que usan el botón de navegador posterior después de que abandonaron mi sitio para que no puedan regresar?

Una vez que hayan hecho clic en esta área, me gustaría evitar que regresen durante un período de tiempo nominado (por ejemplo, 1 hora), de modo que si un abusador entrara en la sala, podrían escapar del sitio e incluso si presionar el botón Atrás no sería obvio qué sitio estaban mirando.

Ideas ??

+3

Sin embargo, tenga en cuenta que el sitio permanecerá en la lista de historial, etc., así que sugiérales a los usuarios que utilicen el modo privado del navegador o una función similar. – Piskvor

+0

@Piskvor: Es por eso que sugerí usar location.replace. Al menos reemplazará el historial de la página actual con la página "segura", que es mejor que nada. Su punto es completamente válido y vale la pena señalarlo. –

+0

Muchas gracias, realmente agradezco tus respuestas. ¡Salud Brian! – lyndsey

Respuesta

4

Siempre puede capturar el evento del botón Atrás y enviar al usuario a una url "segura" al azar usando algo como;

window.onbeforeunload = function() { 
    location.replace('http://www.bbc.co.uk'); 
    return "This session is expired and the history altered."; 
} 

Dentro del bloque de función también se puede establecer simplemente una cookie denominada 'NoReturn', que cada vez que cualquiera de las páginas en su sitio de verificación para luego podrían redirigir cada vez en el sitio "seguro" para la próxima hora.

Hay un artículo decente en todos los aspectos de controlling the back button and the user's browser history here;

0

Vea el siguiente anwser de Scott Hanselman. También puede poner una clave aleatoria en la cadena de consulta y validar el valor con una lista y realizar las acciones necesarias si esa clave ya no está en sus usuarios permitidos.

Cuestiones relacionadas