Maestros del Web


Estás en Inicio / Editorial / Flash

14.02.2006

Tutorial de precargas múltiples

En más de una ocasión hemos necesitado de las precargas (mal necesario), y muchas veces tenemos que cargar más de una SWF o JPG externamente y bueno.

No es óptimo poner el preload en el swf externo, así que aquí les dejo un preload reutilizable para cualquier momento. La idea la surge a partir de leer tutorial de Freddie® así que recomiendo darle un vistazo para tener las cosas claras desde un inicio.

var  vacio: MovieClip  = this . createEmptyMovieClip ("vacio", 1);
vacio. _x  = 80;
var  loop: MovieClip  = this . createEmptyMovieClip ("loop", 0);
var  vacio: MovieClip ;
linea. _xscale  = 0;
reloj. _alpha =0 

//--------------------------------> mi funcion precarga
function  cargador(foto) {
 vacio. loadMovie (foto);
 reloj. _alpha =100
 loop. onEnterFrame  = function () {
  total = vacio. getBytesTotal ();
  cargados = vacio. getBytesLoaded ();
  t = Math . floor ((cargados*100)/total);
  campo. text  = t;
  linea. _xscale  = t;
  reloj. gotoAndStop (t);
   if (t>=100) {
     delete  loop. onEnterFrame ;
     campo. text  = "";
     linea. _xscale  = 0;
     reloj. _alpha =0;
   }
  };
 } 

//---------------------------------> botones que llaman la función
b1. onPress  = function () {
    cargador("foto1.jpg");
};
b2. onPress  = function () {
    cargador("foto2.jpg");
};
b3. onPress  = function () {
    cargador("foto3.jpg");
};

Bien, ahora les explicare un poco, si leyeron el tutorial de Freddie® verán que es CASI similar, los cambios son sencillo, sólo en vez de usar _root uso un MC (movieclip) para cargar dentro los jpg o swf externos que queramos. Cómo así? bueno con una función llamada cargador, que recibe de parámetro el nombre de lo que vamos a cargar.

Además, aquí estoy utlizando onEnterFrame y un if para detener el onEnterFrame.

Después lo que debemos hacer, es llamar desde nuestro botón a nuestra función y pasarle el nombre del archivo que deseamos precargar.

b1. onPress  = function () {
    cargador( "foto1.jpg" );
};

Eso es todo, en este caso use _xscale para hacer mi barrita preload, o usar el reloj para una animación mas personalizada.

Espero les sirva, aquí les dejo el zip y para ver el ejemplo aqui .

Califica esta nota:

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5 de 5)
Loading ... Loading ...

Sobre el autor

Elder Vásquez Rettis
Elder, es desarrollador de Eldervaz.com,

Si eres nuevo en Maestros del Web y te agradan nuestras publicaciones, te invitamos a suscribirte a nuestro Feed.

Sindícanos en: Google Reader, Bloglines, My Yahoo o My MSN | ¿Qué es el Feed?

Comentarios

3 comentarios en total.

  1. Zodocarlau 30.10.2006 - 12:25 - #

    Hola Elder,
    el preloader me funciona genial cuando lo testeo desde el flash, carga los jpg que tengo en el site.
    pero cuando estoy en Explorer el reloj, la barra y el % aparecen cuando hago click y luego desaparece aunque no se haya cargado al 100%.
    En tu ejemplo me pasa lo mismo.
    Tenes idea de porque ocurre?

    mil gracias!

  2. Daniel Lazarte 08.01.2007 - 09:55 - #

    mmmm buen aporte

  3. fer 08.01.2007 - 10:13 - #

    buen ejemplo pero solo funciona la precarga en explorer, no funciona con mozilla, abra alguna forma de arglar eso?
    me podrian informar a filactito@gmail.com

Deja tu Comentario


Maestros del Web se reserva el derecho de moderación de los comentarios. Evita utilizar palabras soeces, ataques directos, descalificativos, insultos, de lo contrario tu comentario será eliminado.


Anuncios por Q
-


Maestros del Web es el punto de encuentro para los entusiastas de la red.

Creative Commons by-nc-sa 3.0 | Política de Privacidad | CMS: Wordpress