Foros del Web » Creando para Internet » Flash y Actionscript »

LOs preloaders me traen loco

Estas en el tema de LOs preloaders me traen loco en el foro de Flash y Actionscript en Foros del Web. Hola: No sé por donde salir de esto... tengo una página que carga movies externas, una de ellas tiene componentes que necesitan cargarse en el ...
  #1 (permalink)  
Antiguo 18/11/2006, 13:27
Avatar de lvfp  
Fecha de Ingreso: septiembre-2005
Ubicación: España
Mensajes: 337
Antigüedad: 18 años, 7 meses
Puntos: 4
LOs preloaders me traen loco

Hola:

No sé por donde salir de esto... tengo una página que carga movies externas, una de ellas tiene componentes que necesitan cargarse en el primer fotograma, con lo que si le coloco el preloader al swf de los componentes no aparece nada (cargando ni porcentaje) hasta que lleva el 95% cargado. MI preloader está en swf principal, controlando la carga del _level1.

Lo tengo de la siguiente forma:

La movie principal tiene su propio preloader en los frame 1 y 2, el frame 3 es el del contenido.

En el del contenido hay una movie con 3 frames:
1 con un texto introductorio
2 con el preloader y donde se cargan las movies externas en el _level1

El preloader tiene 2 frames con dos colores de "cargando"

El primer frame tiene este código

if (_level1.getBytesLoaded()==_level1.getBytesTotal() ){
//oculto el preloader si esta cargado al 100%
_parent.preloader._visible=false;
}
else{
//aparece el preloader
_parent.preloader._visible=true;
//pongo el txt de %
this.c.text=int((_level1.getBytesLoaded()/_level1.getBytesTotal())*100)+" %";
}

Pues la primera vez funciona perfectamente, pero la segunda queda un rato 0% y despues me carga la movie externa.

Eso en explorer, en firefox ni se ve el preloader...

La web en cuestion es:

www.soltecingenieros.com

¡¡¡¡¡Ayuda!!!!
  #2 (permalink)  
Antiguo 18/11/2006, 14:12
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 18 años, 1 mes
Puntos: 0
Bueno, creo que el problema es que no estas colocando el codigo del preloader dentro de un enterFrame, el cual lo que hace es ejecutar un ciclo infinito hasta que tu lo pares. Pq no colocas tu codigo para ver si así podemos ver el problema!
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
  #3 (permalink)  
Antiguo 18/11/2006, 14:26
Avatar de lvfp  
Fecha de Ingreso: septiembre-2005
Ubicación: España
Mensajes: 337
Antigüedad: 18 años, 7 meses
Puntos: 4
Mi preloader no tiene más código... cuando se ha cargado se oculta, y cuando cargas otro aparece, en las pruebas simulando las descargas va perfecto.
  #4 (permalink)  
Antiguo 18/11/2006, 17:03
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 18 años, 1 mes
Puntos: 0
Ok, te cuento que hace algunos dias me pasaba lo mismo con un preloader que tenia en una página, el preloader lo podía ver perfectamente en el explorer pero en el firefox no se lograba ver, simplemente aparecia el SWF en pantalla cuando ya se habia descargado del todo. Lo que hice fue cambiar un poco el codigo para así lograr solucionar el problema, aqui te dejo el actionscript que utilizé:

Cita:
stop();

_root.contenedor._alpha = 0;
_root.preloader._visible = false; //Oculta el preloader

function cargar(acargar){ // le envio el nombre del SWF a cargar por ejemplo productos.swf
_root.preloader._visible = true;
_root.preloader._alpha = 100;
_root.contenedor._alpha = 0;
barra.por = 0;
_root.contenedor.loadMovie(acargar);
_root.contenedor.stop();
this.onEnterFrame = function(){
pesototal = _root.contenedor.getBytesTotal();
cargaleida = _root.contenedor.getBytesLoaded();
if(cargaleida >= pesototal && cargaleida > 100){
_root.contenedor._alpha = 100;
_root.contenedor.play();
_root.preloader._visible = false;
barra.por = 0;
delete this.onEnterFrame;
}
else{
barra.por = Math.round(cargaleida*100/pesototal);
texto.por.text = Math.round(cargaleida*100/pesototal)+"% //";
}
}
}
}
Espero que te sirva!! Saludos
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
  #5 (permalink)  
Antiguo 19/11/2006, 11:50
Avatar de lvfp  
Fecha de Ingreso: septiembre-2005
Ubicación: España
Mensajes: 337
Antigüedad: 18 años, 7 meses
Puntos: 4
Hola.. creo que lo he solucionado.. sé que es una chapuza, pero he preobado varias cosas y siempre me salía el @#%&%& "0 %" al cargar. Este es el código que he usado...

this.c.text=int((_level1.getBytesLoaded()/_level1.getBytesTotal())*100)+" %";
if (this.c.text!="0 %" && this.c.text!="100 %"){
_parent.preloader._x = -36;
}
else{
_parent.preloader._x = -500;

}

Lo sitúo fuera de la película y sólo si la carga es distinta de 0 % y de 100 % lo hago aparecer... chapuza pero funciona. Y va tanto en explorer como en firefox

Gracias por tu ayuda...me ha hecho pensar
  #6 (permalink)  
Antiguo 19/11/2006, 13:24
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 18 años, 1 mes
Puntos: 0
Bueno, realmente si que es una forma chapuza como dices tu de hacer las cosas, pero la verdad es que de la forma en que te lo expliqé funciona perfectamente, ya tu verás como implementas la forma de usarlo, espero haberte servido de ayuda.
Suerte
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
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 01:07.