Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Evento onunload de Javascript


Ejemplo de uso del evento onunload en Javascript para abrir una ventana secundaria cuando el usuario abandone la página.


09/10/03 - Veamos un ejemplo del evento onunload, que, recordamos, se activa cuando el usuario ha abandona la página web. Por tanto, onunload sirve para ejecutar una acción cuando el usuario se marcha de la página, ya sea porque pulsa un enlace que le lleva fuera de la página o porque cierra la ventana del navegador.

El ejemplo que deseamos mostrar sirve para abrir una página web en otra ventana cuando el usuario abandona la página. De este modo actúan muchos de los molestos popups de las páginas web, abriéndose justo cuando abandonamos el sitio que estábamos visitando.

<html>
<head>
    <title>Abre al salir</title>
    <script>
    function abreventana(){
       window.open("http://www.google.es","venta","")
    }
    </script>
</head>

<body onunload="abreventana()">


<a href="http://www.desarrolloweb.com">DW!!</a>
</body>
</html>


El ejemplo es tan sencillo que casi sobran las explicaciones. Simplemente creamos una función que abre una ventana secundaria y la asociamos con el evento onunload, que se coloca en la etiqueta <body>.

Se puede ver en marcha en una página aparte.

Referencia: Si no tenemos una base de Javascript nos vendrá muy bien acceder a nuestra sección Javascript a fondo.

Si deseamos conocer más cosas de los eventos.
Si deseamos saber más sobre abrir ventanas.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada
+ 2 comentarios (Añadir)
+ 3 comentarios no revisados

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Programación en Javascript II

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en Scripts en Javascript


 Comentarios de los visitantes
Los comentarios de los visitantes son para ampliar la información del artículo. Cualquiera puede participar.
Se muestran 2 comentarios revisados

 Comentario de KarlanKas
03/11/03 
El ejemplo puesto tiene un pequeño problema: que cada vez que se cambie de página en el navegador, aunque sea dentro del mismo site se va a abrir la página, con el consiguiente engorro para el visitante al que tal vez le moleste tanta profusión de ventanitas. Si se va a utilizar para cerrar la sesión tal vez moleste la aparición de la ventana.

Una posible solución es:

1.- Abrir la ventana fuera del campo de visión del escritorio con un título que indique lo que se está haciendo.

2.- Un JS que identifique en qué dominio está la ventana madre. Si sigue en nuestro site que se cierre y si no (si se ha cerrado o si está en otro dominio) que haga lo que tenga que hacer (cerrar la sesión, moverse para mostrar un anuncio, un recordatorio...).

Una posible solución en mi humilde opinión sería poner en el head de la ventana que se abra:

<SCRIPT>
dominio="desarrolloweb.com"
if(opener && (opener.location.host==dominio || opener.location.host=="www."+dominio){
   self.close();
}
else{

   //Poner aquí lo que se quiera que se haga

}
</SCRIPT>


Entiendo que no debe ponerse en un onload porque cuanto antes se ejecute más rápido cierra la ventana si no debe estar.

Y en el código que abra la ventana se puede poner que se abra fuera de la pantalla poniendo:

ventana=("direccion.html","","left=3000,top=0");

Espero no haber resultado pesado.

 Comentario de javi
05/8/05 
En Netscape no funciona. Netscape activa el evento onUnload solo cuando se cambia de pagina dentro de una ventana, pero al cerrar la ventana no activa OnUnoload.

En realidad, creo que esto solo funciona en Iexplorer

Añadir un comentario al artículo Añadir un comentario del artículo
 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 3 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
Añadir un comentario al artículo Añadir un comentario del artículo



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Programación en Javascript II
Categorías
+Scripts en Javascript

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia