Comunidad de diseño web y desarrollo en internet online

Problema con LoadMovie

Citar            
MensajeEscrito el 05 Dic 2008 11:19 pm
Hola a todos y de antemano gracias por la ayuda.
Les cuento mi problema...estoy trabajando en una aplicacion en donde cargo, a traves de un loadMovie("frame.swf", "contenedor"), utilizando el media controller una animacion que contiene una transicion de imagenes en un determinado fotograma.
El problema radica en que me paso a otro fotograma, donde no esta la animacion, y depues de un tiempo sin hacer nada me cambia otra vez de fotograma (al siguiente).
Lo que imagino es que la animacion sigue corriendo detras de lo que estoy haciendo puede ser?
Sino que podra ser?
Gracias a todos y espero que se entienda.
Saludos.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 06 Dic 2008 01:54 pm
Puede que algún código (por ejemplo un setInterval) quede actuando, mira lo que tiene la animación

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Dic 2008 02:05 pm
Jorge, gracias por tu respuesta! Si tiene un setInterval que utilizo para setear el tiempo que debe estar parada una imagen antes de pasar a la siguiente.
Esta animacion la utilizo en los menues principales solamente, estuve probando con unLoadMovie() para que una vez me vaya a otro fotograma, la animacion para...pero no me funiona de ninguna manera.
Existe otra forma?
Que puedo hacer?
Gracias por todo!
Saludos.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 06 Dic 2008 02:20 pm
Un setInterval permanece en memoria hasta que no hagas un clearInterval. Si no haces un clearInterval, ya le puedes dar con un martillo que seguirá allí

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Dic 2008 02:30 pm
Jorge, siguiendo tus consejos estoy al borde de pasar al martillo jaja!
El tema es que por imagen (alrededor de 7) en la animacion tengo los siguiente:

stop();
segundos = 20;
espera = function(){
play();
clearInterval(a);
};
a=setInterval(espera, segundos*1000);

Como veras, la imagen queda parada 20 seg. antes de pasar a la siguente.
Cuando hago un loadMovie de esta animacion en mi principal.fla parece que tomaria los 20 seg como decis vos.
Se puede hacer algo en el principal para limpiar el intervalo una vez que no use mas el fotograma que lo carga?
o me recomendas utilizar otro metodo para manejar el tiempo en la animacion?
Gracias por tanta ayuda.
Saludos.

Esteban.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 06 Dic 2008 02:34 pm
Mirate setTimeout que se ejecuta una sola vez

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Dic 2008 02:40 pm
Buenisimo Jorge!
Lo voy a mirar y despues cuento como fue.
Gracias por todo!

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Dic 2008 06:36 pm
Estuve probando el setTimeout pero obtuve el mismo resultado, en el movieclip que cargo la animacion, las imagenes de la misma y sus transiciones, hacen que en mi aplicacion principal tambien se desplace.
Que puedo hacer con esto?
Gracias!
Saludos.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Dic 2008 09:52 pm
Ok, declara el setInterval así:

Código ActionScript :

a = setInterval(function(w){
  w.play()
  clearInterval(a)
}, segundos*1000);


De esta forma se "autoborra" después de ejecutarse

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Dic 2008 10:15 pm
Ahi probe lo que me pasaste y te cuento....no me funciono el intervalo hasta que le saque la variable w, pero de esa forma quedaria exactamente igual que antes...asi que la verdad que no se que puede ser.
Para ver si entiendo....la idea es tratar de "limpiar" el intervalo de tiempo para que no moleste verdad?
Otra menera puede ser tratar de que cuando no use mas el movieclip donde cargo la animacion la descargo?
Gracias.
Saludos.

Esteban.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Dic 2008 10:35 pm
Sorry, me olvide del segundo argumento:

Código ActionScript :

a = setInterval(function(w){ 
  w.play() 
  clearInterval(a) 
}, segundos*1000, this);


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Dic 2008 10:54 pm
Siii!! Gracias!! sos un groso! funciona de 10!
Perdon por romper pero me podrias explicar como es esta funcion y que diferencia hay con la anterior? porque no lo veo.
Mil gracias!!!
Saludos.

Esteban.

Por estediez

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Dic 2008 11:19 pm
Es "autocontenida", es decir invoca una función anónima que borra el intervalo automáticamente. En tu versión, llama a una función externa, y si se interrumpe el ciclo (como te pasó), sigue rulando. Le paso this como argumento para asegurarme que sabe donde ejecutar el play, usa esta versión cuando te surjan este tipo de problemas

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.