2010-10-16 13 views
13

¿Es posible usar javascript para manejar el evento de página de actualización? Lo que quiero es recibir un aviso si el usuario realice una de estas conductas: la páginaGestionar evento de página de actualización con javascript

  • actualización pulsando F5
  • cerca pestaña o el navegador
  • introduzca una nueva URL a continuación, pulse ENTER en navegador

para mostrar un mensaje de advertencia?
¡Gracias de antemano!

Respuesta

22

No desea la actualización, desea el evento onbeforeunload.

http://msdn.microsoft.com/en-us/library/ms536907(VS.85).aspx

código de ejemplo de artículo

<HTML> 
<head> 
<script> 
function closeIt() 
{ 
    return "Any string value here forces a dialog box to \n" + 
     "appear before closing the window."; 
} 
window.onbeforeunload = closeIt; 
</script> 
</head> 
<body> 
    <a href="http://www.microsoft.com">Click here to navigate to 
     www.microsoft.com</a> 
</body> 
</html> 
+2

no funciona en cromo – Chetan

+1

Trabajando para la versión reciente de cromo ahora :) –

+0

No funciona en la versión actual de Chrome '60.0.3112.101 (compilación oficial) (64 bits)'. –

4

Lo más cerca que se puede conseguir es el caso window.onbeforeunload:

window.onbeforeunload = function (e) { 
    var e = e || window.event; 

    // For IE and Firefox 
    if (e) { 
     e.returnValue = 'Leaving the page'; 
    } 

    // For Safari 
    return 'Leaving the page'; 
}; 

Es importante tener en cuenta que es necesario devolver una cadena de esta función.

+0

estoy bastante seguro de que usted no tiene que hacer nada con 'e.returnValue' para IE/FF. Solo necesitas devolver una cadena. –

+0

@MattBall - se refiere a IE <8 y Firefox antes de la versión 4. ver [los documentos en MDN] (https://developer.mozilla.org/en/DOM/window.onbeforeunload). –

Cuestiones relacionadas