Para detectar F5
var code = (e.keyCode ? e.keyCode : e.which);
if(code == 116) {
}
Así funciona para IE, Chrome, Firefox, Safari; no está soportado para Opera. Funciona OK para Alt-F4, la X de la pestaña y navegador, y atención NO DISCRIMINA si es F5, postback o reload
window.onbeforeunload = function (e) {
e = e || window.event;
if (e) {
DetectBrowserExit();
}
}
Encontré alguna referencia al respecto pero meten mucho ruido, no es nada trivial :’(
http://stackoverflow.com/questions/20853142/trying-to-detect-browser-close-event--
Has recibido este mensaje porque estás suscrito al grupo "AltNet-Hispano" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a altnet-hispan...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a altnet-...@googlegroups.com.
Visita este grupo en http://groups.google.com/group/altnet-hispano.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Me comento un compañero que para IE11 parece que no funciona
correctamente. Se trata detectar el cierre del navegador, pero lo que he visto
hasta ahora detecta el cambio o recarga de página (evento:
window.onbeforeunload), pero no he visto forma de distinguirlo del cierre del
navegador (pestaña o cierre completo).
En Chrome. ¿Y no se ejecuta por cada cambio o recarga de página (lo que es un F5, refresh, o cuando cambias el foco de pestaña a otra?. Gracias.
Llamar a una página ASP para hacer un Session.Abandon
--
Suele caducar a los 20 minutos. Pero hay casos (ASP 3.0) que se quedan sesiones abiertas, y hasta que no se reinicia el IIS no desaparecen.
--
Hola a todos.
De este tema (que ha tenido mucho recorrido en años), y utilizando este código
<script language="javascript" type="text/javascript">
/*
NO DISCRIMINA LOS POSTBACK
window.onbeforeunload = function (e) {
var e = e || window.event;
// For IE and Firefox
if (e) {
e.returnValue = 'ATENCION: DEBE RELLENAR LA ENCUESTA ANTES DE CERRAR';
}
// For Safari
return 'ATENCION: DEBE RELLENAR LA ENCUESTA ANTES DE CERRAR';
};
window.onunload = function (e) {
var e = e || window.event;
// For IE and Firefox
if (e) {
e.returnValue = 'ATENCION: DEBE RELLENAR LA ENCUESTA ANTES DE CERRAR';
}
// For Safari
return 'ATENCION: DEBE RELLENAR LA ENCUESTA ANTES DE CERRAR';
};
*/
</script>
if (IsPostBack) { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), Guid.NewGuid().ToString(), "_isPostBack = false;", true); }