2010-03-23 16 views
8

Mi página web ejecuta una función javascript cuando se carga la página. Sin embargo, no quiero que la función se ejecute si el usuario regresa a esta página usando el botón Atrás. ¿Cómo puedo evitar esto usando javascript?Detectar si el usuario ha usado el botón Atrás

$(document).ready(function(){ 
    // Do not run this function if the user has arrived here using the back button 
    RefreshThePage(); 
}); 
+0

posible duplicado de http://stackoverflow.com/questions/55871/track-when-user-hits-back-button-on -the-browser –

+0

Duplicate: http://stackoverflow.com/questions/55871/track-when-user-hits-back-button-on-the-browser Al menos una mejor respuesta aquí, sin embargo, la pregunta debe fusionarse pero no eliminado –

+0

Tengo el mismo problema en este momento, ¿puedes compartir cómo resolviste este problema? –

Respuesta

4

habría pensado que el uso de cookies es la forma más fácil de hacer esto

+0

tengo el mismo problema en este momento, ¿puede especificar cómo usar las cookies para manejar este problema, por favor? –

0

Track when user hits back button on the browser

Hay múltiples maneras de hacerlo, aunque algunas sólo funcionarán en algunos navegadores. Uno que conozco de la parte superior de mi cabeza es insertar un pequeño iframe casi invisible en la página. Cuando el usuario pulsa el botón Atrás, se desplaza hacia atrás el iframe, que puede detectar y luego actualizar su página. Here es otra solución.

Es posible que también desee ir a ver el código fuente en algo como gmail y ver cómo lo hacen.

Here's una biblioteca para el tipo de cosa que usted está buscando por cierto

-3

El objeto de evento le ofrece para obtener el código de la llave. así que, básicamente, registras un eventlistener enKeyDown. Usa el evento recibido. si el código clave coincide con la tecla que desea continuar con su función.

document getElementById('elementId').onKeyDown = checkKey(); 
function checkKey(event) { 
    if (event.keyCode === keyCode) then . . . 
} 

jugar con alert (event.keyCode); para encontrar el correcto.

+3

Tom hace referencia al botón Atrás del navegador, no a un botón Atrás en la página. Y no creo que puedas capturar el botón Atrás del navegador como un evento de teclado en JavaScript. – Prutswonder

Cuestiones relacionadas