Simbiontes
Cada loco con su tema   

Blog |  Acerca de...  |  Asuntos recurrentes  | 

Autofocus en ventanas

Escrito por El Malvado Acidonitrix , Jueves 19 de Enero de 2006
   1 Comentarios
Archivado en: Codeblog

Una pequeña prueba de concepto, de utilidad en ventanas emergentes recicladas.

Una pequeña prueba de concepto, de utilidad en ventanas emergentes recicladas.

Es sencillo, pero hasta ahora no se me había ocurrido utilizarlo. Es el caso de una ventana emergente abierta mediante el método window.open. Es más fácil situarse con un ejemplo. Supongamos que disponemos de una página llena de fotos reducidas y que se desea mostrar una foto ampliada en una ventana emergente. Si no se desea crear el caos y poblar la pantalla del usuario de ventanitas, abriendo una nueva ventana emergente cada vez que se amplía una foto, basta con llamar a la ventana hija siempre por el mismo nombre.

El problema, entonces, radica en que, si ya está abierta, la ventana no emerge (porque no obtiene el foco), quedando en segundo plano y confundiendo al usuario. Ahora bien, puede incluirse una instrucción para que el método de apertura lleve el foco a la ventana hija (como se ve en esta otra POC). Sin embargo, esto último puede no interesar, no convenir o no ser posible (sería largo de explicar un caso práctico, pero haylo; baste decir que primaba el tiempo). En vez de gestionar el foco en la instrucción de apertura, puede realizarse en la propia página que se abre. Así:

function autofocus()
{
   // autofoco de ventana
   // de utilidad en ventanas emergentes recicladas
   window.focus();
}

Y en la etiqueta <body> colocar una llamada para el evento onload:

<body onload="autofocus();">

El efecto puede variar si, por ejemplo, se coloca la llamada al foco en un evento onload para la imagen (por ejemplo), o se invoca, igualmente, al cambiar la URL de la ventana:

<body onload="autofocus();" onunload="autofocus()">

Las combinaciones son múltiples e interesantes.

Véase también la nota "Comunicación entre ventanas con Javascript" y la categoría codeblog en general para otras chucherías modestas pero útiles, no obstante.


1 comentarios

Bla Bla
Dice: jaider rodriguez, Miércoles 2 de Enero de 2008

Tengo un problemita con el focus en mozilla,
tengo un chat la idea es que ese chat cuando llegue algun mensaje y si la ventana que lo contiene esta minimizada automaticamente la ventana empieze a parpadear o se muestre de inmediato, pero no lo consigo con mozilla en internet explorer si se hace y la funcion es muy sencilla
cuando el applet recibe un mensaje este invoca un metodo javacript de la pagina que executa este codigo
window.focus();
agardeceria colaboracion o si saben de alguna otra forma de hacer que lo que estoy intentando



Enviar un comentario










Introduce el código que aparece aquí...
Recordar información personal en este PC...







Mostrar búsqueda avanzadaActivar búsqueda avanzada

Bienvenido al repositorio de los simbiontes

Una página colectiva y ecléctica para comentar y apuntar cosas.

Estás viendo los archivos de Enero de 2006. Visita la portada para ver las últimas notas.

Sugerencias de lectura

Los simbiontes hablan de...

Sugerencias de lectura

Si quieres curiosear, puedes consultar:

  • todas las entradas archivadas por categoría (abstract).
  • Las entradas ordenadas mensualmente.
  • Suscribirte a los feeds (más abajo).
  • Lo que vienen buscando otras personas.
  • Si lo prefieres, puedes ver la portada en el formato anterior.
  • ...o leer la presentación para saber qué es esto y si puedes fiarte o no de lo que aquí se dice, y por qué pensamos que esto no es un blog aunque lo llamemos así para entendernos entre nosotros.

Sindicación RSS

  • ¿Qué es un feed?
  • Agregadores recomentados

Lecturas edificantes y tráfico de influencias

La tira Ecol

Tira Ecol

http://tira.escomposlinux.org
La tira ecol ha vuelto.