Foros del Web » Programando para Internet » Javascript »

Cuando se cierra una ventana... se abre una puerta?

Estas en el tema de Cuando se cierra una ventana... se abre una puerta? en el foro de Javascript en Foros del Web. Hola!! Mi problemita es que tengo una función como la siguiente: function chiudi() { ReestablecePeso(); close(); } a la cual llamo cuando presionan el boton ...
  #1 (permalink)  
Antiguo 27/11/2002, 03:39
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Sonrisa Cuando se cierra una ventana... se abre una puerta?

Hola!!
Mi problemita es que tengo una función como la siguiente:

function chiudi() {
ReestablecePeso();
close();
}

a la cual llamo cuando presionan el boton "cerrar" del formulario que tengo en la pagina .htm.
Ahora.... qué pasa si en vez de tocar mi botoncito se le ocurre al usario cerrar la ventana con la cruz normal de una ventana (la que está con Maximizar y reestablecer, la de windows!) ???? Pasa que se me arruinan todos los calculos... se hace un desastre!!!
Hay algún evento que pueda capturar esta acción? Yo necesito llamar a esta función si cierran la ventana...
Gracias!!!!
__________________
Flavia.
  #2 (permalink)  
Antiguo 27/11/2002, 07:43
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Prueba poner la llamada en el onclose o el onunload del tag body.

Saludos.
  #3 (permalink)  
Antiguo 27/11/2002, 08:33
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
si pero...

eso es precisamente lo que necesito... pero funciona la llamada a la función en el "onload" pero NO FUNCIONA en el "onClose"... por qué puede ser?
Yo necesito que sea en el onclose porque justamente me interesa que sea cuando cierran esta ventana del explorador y no que suceda cada vez que "actualizan" la ventana...
Puse así:
<body style="font-family: Arial" bgcolor="#FFFFFF" leftmargin="10" topmargin="0" onClose=ReestablecePeso();>

Gracias por responder!!!!!!!!!!!
__________________
Flavia.
  #4 (permalink)  
Antiguo 27/11/2002, 09:16
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Flavia, no tengo otra cosa que decirte sino darte la razón. No funciona. No se si eslógico que si se cierra el browser le avise a la página cargada "...me están cerrando".

De cualquier manera probé onclose, onunload y nada.

Ojalá algún letrado nos diga como hacerlo...

Saludos.
  #5 (permalink)  
Antiguo 27/11/2002, 09:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola flavia y Kaopectate:

No podía creer que no fubcionase el unload (ya que el unclose no existe ¿? y hice una prueba co el primer html que encontre y le añadí al "body": onunload="alert('Ok')", y al pinchar sobre la crucesita me salió el alert. Uso explorer. Tal vez la llamada no esté bien.

Saludos
  #6 (permalink)  
Antiguo 27/11/2002, 09:35
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Hola Caricatos, mira mi ejemplo:

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
cerrar(){
    
alert("Cerrando");
    
close();
   }
  
</script>
 </head>
 <body>
  <form name="frm" onunload="cerrar()">
   <input type="button" value="Cerrar" onclick="cerrar()">
  </form>
 </body>
</html> 
¿Que tiene de raro?

Yp también uso IE-5
  #7 (permalink)  
Antiguo 27/11/2002, 10:09
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola Kaopectate: (y flavia, por supuesto)

La verdad es que despues de ver tu participación en el foro, cosa que elogio, creo (espero no equivocarme) que lo que te pasa es que sencillamente usas el tag equivocado (el viejo paradigma del árbol que impide ver el bosque).

Yo he probado mi "alert" del post anterior sobre una página sin formulario, y en el evento onunload del body.
Mi fuerte no son los formularios, pero el onunload del body supongo que se corresponde con el "onsubmit" de los formularios.
Si me equivoco, me gustaría que me corrigieses.

Saludos
  #8 (permalink)  
Antiguo 27/11/2002, 10:21
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
No sería raro Caricatos, mi fuerte tampoco son los formularios, de hecho tengo muy pocos desarrollos web, de hecho no trabajo en web. Lo que he aprendido ha sido por estudiar cosas que no debería y por ayudar acá en los foros. Asi que no es raro que me equivoque en tonterías.

Si, el onclose del body no existe, y el onunload en el body quizás sea un onaftersubmitdocument o algo asi. Si el problema fuese JavaScript al menos tendría material de apoyo, pero si es HTML...

Bueno, espero que tu o alguien nos instruya...

Gracias y saludos.
  #9 (permalink)  
Antiguo 27/11/2002, 10:50
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
¡CARICATOS!

Acabo de entender lo que me estabas diciendo, el onunload se lo puse al form y no al body.

Tienes razón.

Disculpa Flavia, mi post ha debido ser asi:

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
cerrar(){
    
alert("Cerrando");
    
close();
   }
  
</script>
 </head>
 <body onunload="cerrar()">
  <form name="frm">
   <input type="button" value="Cerrar" onclick="cerrar()">
  </form>
 </body>
</html> 
(...y funciona)
  #10 (permalink)  
Antiguo 28/11/2002, 07:43
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
"funciona la llamada a la función en el "onload" pero NO FUNCIONA en el "onClose

Esto había puesto yo en mi segundo mensaje... sí! Funciona perfecto en el unload pero yo lo necesitaba en el onclose...si es que existía! y si es que existe no funciona!!
De todas formas desde ayer estuve trabajando en mi código y logré modificarlo de manera de hacer esa llamada a la función en el evento que funciona: unload.

<body style="font-family: Arial" bgcolor="#FFFFFF" leftmargin="10" topmargin="0" onUnload=ReestablecePeso();>

y ahora funciona bien.
Perdonenme!!! Pero pensaba que realmente necesitaba hacerlo cuando se cerrara y no en cada actualización. Por suerte pude adaptar el código.
MIL MILLONES de GRACIAS por su interés y sus respuestas!!!!!!!!!!

Hasta otra pregunta!!!
__________________
Flavia.
  #11 (permalink)  
Antiguo 28/11/2002, 07:46
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Gracias Kaopectate!!!!
Gracias Caricatos!!!!
__________________
Flavia.
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 23:21.