Foros del Web » Programando para Internet » Javascript »

Alerta al cerrar la ventana?

Estas en el tema de Alerta al cerrar la ventana? en el foro de Javascript en Foros del Web. Tengo esto Código: <script language="JavaScript"> window.onbeforeunload = confirmExit; function confirmExit() { return "Mensaje aquí "; } </script> Esta función me hace, como sabrán, que al ...
  #1 (permalink)  
Antiguo 05/08/2013, 11:49
 
Fecha de Ingreso: febrero-2013
Mensajes: 43
Antigüedad: 11 años, 10 meses
Puntos: 0
Pregunta Alerta al cerrar la ventana?

Tengo esto
Código:
<script language="JavaScript">
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    return "Mensaje aquí ";
  }
</script>
Esta función me hace, como sabrán, que al cerrar la ventana me aparezca el mensaje para y así decidir si salir o no, pero también lo hace al actualizar la página, yo no quiero que aparezca al actualizar la página, solo al cerrar la ventana.

Como lo hago?

Gracias.
  #2 (permalink)  
Antiguo 05/08/2013, 12:19
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Alerta al cerrar la ventana?

No podés (hasta donde yo sé) distinguir entre una recarga y un cierre de página.
Si se tratara de enlaces, podrías usar algo así:
http://www.forosdelweb.com/3614147-post7.html
Pero si te referís a los botones del navegador, creo que no es posible.
  #3 (permalink)  
Antiguo 05/08/2013, 13:44
Avatar de patilanz  
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 11 meses
Puntos: 29
Respuesta: Alerta al cerrar la ventana?

Es posible ya que acabo de ver (simple coincidencia) cuando estaba en jsfiddle que si pulso al boton actualizar me pregunta si quiero actualizar la pagina, en cambio si pulso el boton para salir me pregunta si quiero salir...

Si es posible pero no se como se hace.
  #4 (permalink)  
Antiguo 05/08/2013, 13:57
Avatar de andinog  
Fecha de Ingreso: febrero-2012
Mensajes: 50
Antigüedad: 12 años, 10 meses
Puntos: 6
Respuesta: Alerta al cerrar la ventana?

Cita:
Iniciado por Panino5001 Ver Mensaje
No podés (hasta donde yo sé) distinguir entre una recarga y un cierre de página.
Si se tratara de enlaces, podrías usar algo así:
[url]http://www.forosdelweb.com/3614147-post7.html[/url]
Pero si te referís a los botones del navegador, creo que no es posible.
En mi opinión no es posible, de hecho colocar mensajes al cierre es una practica molesta en muchos casos.

Sin embargo, a veces podria ser util, por ejemplo, para terminar de hacer algo que tenias en memoria, ¿tu caso es asi?

Saludos
__________________
"El que nada duda nada sabe"
Ser Programador
  #5 (permalink)  
Antiguo 05/08/2013, 14:17
 
Fecha de Ingreso: febrero-2013
Mensajes: 43
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Alerta al cerrar la ventana?

Claro que se debe de poder. Y pues sí, éste es mi caso, es una aplicación web, manejo cajas y cada vez que un usuario inicia sesión en cierta caja, ésta ya se vuelve no disponible entonces, para que vuelva a ponerse disponible el usuario tiene que cerrar su sesión en el botón cerrar sesión .-.
Peeeeero, nunca falta el usuario que cierra la ventana en vez de cerrar la sesión, así que tengo dos opciones, o cerrarle la sesión al cerrar su ventana, o mandarle ese aviso para que cierre sesión.

Cómo ven?
  #6 (permalink)  
Antiguo 05/08/2013, 14:34
Avatar de andinog  
Fecha de Ingreso: febrero-2012
Mensajes: 50
Antigüedad: 12 años, 10 meses
Puntos: 6
Respuesta: Alerta al cerrar la ventana?

Lamentablemente, no puedo ayudarte, pero se me ocurren alternativas.

Aplicando el concepto de latido o "heartbeat",
podrias tener un setInterval en javascript que indique mediante ajax, cada X segundos, que el usuario esta activo.

En el lado del servidor, un proceso que escuche ese latido. Si transcurre un tiempo prudencial, sin recibir el latido, que cierre la sesion.

Saludos
__________________
"El que nada duda nada sabe"
Ser Programador
  #7 (permalink)  
Antiguo 05/08/2013, 14:37
 
Fecha de Ingreso: febrero-2013
Mensajes: 43
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Alerta al cerrar la ventana?

Hola, y gracias por comentar. Ésto que me acabas de compartir ya lo tengo implementado, el problema es que el usuario NO debe de cerrar la ventana, sino debe de cerrar sesión en el botón cerrar sesión.

Pero como dije antes, hay cada usuario...
  #8 (permalink)  
Antiguo 05/08/2013, 14:50
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Alerta al cerrar la ventana?

Cita:
Iniciado por patilanz Ver Mensaje
Es posible ya que acabo de ver (simple coincidencia) cuando estaba en jsfiddle que si pulso al boton actualizar me pregunta si quiero actualizar la pagina, en cambio si pulso el boton para salir me pregunta si quiero salir...

Si es posible pero no se como se hace.
Si mirás el código fuente te vas a dar cuenta de que no hay una diferenciación desde el código (y el mensaje personalizado que aparece en los navegadores que lo permiten, es el mismo en ambos casos). La diferenciación la hace el navegador en su propia ventana de mensajes.

Cita:
Iniciado por Jesueto Ver Mensaje
Claro que se debe de poder. Y pues sí, éste es mi caso, es una aplicación web, manejo cajas y cada vez que un usuario inicia sesión en cierta caja, ésta ya se vuelve no disponible entonces, para que vuelva a ponerse disponible el usuario tiene que cerrar su sesión en el botón cerrar sesión .-.
Peeeeero, nunca falta el usuario que cierra la ventana en vez de cerrar la sesión, así que tengo dos opciones, o cerrarle la sesión al cerrar su ventana, o mandarle ese aviso para que cierre sesión.

Cómo ven?
Si llegás a encontrar la manera, por favor posteala así aprendemos todos
  #9 (permalink)  
Antiguo 05/08/2013, 14:56
 
Fecha de Ingreso: febrero-2013
Mensajes: 43
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Alerta al cerrar la ventana?

Claro, con gusto. Trabajo en eso...

Gracias a todos!

Etiquetas: javascript-function
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:56.