Tambien se puede poner asi (he movido de sitio las cosas por puro capricho).

function PreCarga(){
       var len = document.images.length;
       if (!len) return;

       for (var i = 0; i < len; i ++){
          if (!document.images[i].complete){
             setTimeout("PreCarga()", 500);
             return;
         }
      }

     //cargadas
         LO QUE QUIERES QUE HAGA
     }


De todos modos, me da la sensación de que en muchos casos las paginas
se presentan tan pronto como estan "listas".

a) Pulsas en un enlace, e inmediatamente empieza a girar el simbolico
de firefox en el tab.
b) El navegador comienza a solicitar recursos. Pero sigues viendo la
pagina antigua.
c) En un momento dato, muestra la nueva pagina, pero sigue pidiendo el
resto de recursos. Se ve la pagina que faltan algunas imagenes.
d) Sigue solicitandose recursos, y cargando los que llegan, hasta
completarse la pagina.

Es decir, me da la sensación que el navegador ya esta haciendo algo
para suavizar la experiencia de navegar de una pagina a otra. Si tu
metes tu sistema. Habra dos sistemas de suavizar las cosas. Como dos
capitanes de barco, o dos cocineros...    Cada uno con su definicion
distinta de "listo" o "suficientemente salado".

Microsoft ya intento en su dia invitarnos a usar "Page Transitions"
 http://www.layoutgalaxy.com/frontpage2000/page.php4

Pero la sabiduria de los webmasters termino arrinconando esta opcion,
y hoy en dia ya esta olvidada.  Para mi esto significa que esta
caracteristica ya fue sometida al jucio universal de los webmasters, y
rechazada como "una mala idea".





2008/2/12 Sergio el perezosso <[EMAIL PROTECTED]>:
> Hola Silvia.
>
> Lo mio no es el js pero hace un tiempo tuve la necesidad de precargar unas
> cuantas imágenes antes de mostrarlas y para controlar las  imágenes cargadas
> utilicé el siguiente script:
>
> function PreCarga(){
>       imagenes = document.images;
>       cargadas = true;
>       for (var i = 0; i < imagenes.length; i ++)
>         cargadas = cargadas & imagenes[i].complete;
>       if (cargadas){
>         LO QUE QUIERES QUE HAGA
>       }
>       else
>         setTimeout("PreCarga()", 500);
>     return true;
>     }
>
>
> Espero que te oriente un poquito.
> salu2.
>
>
> El día 11/02/08, Silvia Caparrós <[EMAIL PROTECTED]> escribió:
>
> >
> > Ah!!
> > Vale, no te había entendido bien, fenomenal entonces. Voy a ver que tal
> > sale.
> > Gracias otra vez Carlos,
> >
> >
> > -----Mensaje original-----
> > De: [EMAIL PROTECTED] [mailto:
> > [EMAIL PROTECTED]
> > En nombre de carlos campderrós
> > Enviado el: lunes, 11 de febrero de 2008 17:24
> > Para: Ovillo, la lista de CSS en castellano
> > Asunto: Re: [Ovillo] OT: Javascript para cargar imágenes mostrándolas de
> > una
> > sola vez
> >
> > 2008/2/11 Silvia Caparrós <[EMAIL PROTECTED]>:
> >
> > > Hola Carlos,
> > >
> > > Uf, por un lado es interesante lo que propones, pero por otro el hecho
> > de
> > > que exista la posibilidad de que no se vea nada dependiendo del usuario,
> > > no
> > > me da confianza.
> >
> >
> > Creo que has interpretado mal mi advertencia... si lo haces tal cual te
> > puse
> > todos los usuarios verán el contenido de la página. Aquellos sin CSS,
> > verán
> > la página tal y como la verían normalmente (es decir, sin CSS). Aquellos
> > con
> > CSS y JS, apreciarán que la página se carga de golpe, tras un tiempo de
> > espera (que se carguen todas las imágenes y eso...). Y por último,
> > aquellos
> > con CSS pero no JS, verán la página como se va cargando poco a poco... lo
> > habitual vamos.
> >
> >
> > Te agradezco mucho que me hayas ayudado,
> > >
> >
> > Para eso estamos.
> >
> > Saludos
> >
> > -
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección: 
http://lists.ovillo.org/mailman/listinfo/ovillo

Responder a