Comunidad de diseño web y desarrollo en internet online

dudas en cambio de clips con setInterval

Citar            
MensajeEscrito el 26 Jul 2006 04:24 pm
Holas...quisiera saber especificamente como usar el setInterval y clearInterval para pasar de frame en frame, el asunto es que tengo una presentacion, dicha presentacion tiene un menu que permite ir de seccion en seccion, cada seccion es un clip que esta en un frame distinto, para efectos de ser mas explicito llamare a los clips "clipA", "clipB", "clipC" y "clipD", como escribi anteriormente estos clips estan en frames distintos y los manejo con el menu mediante gotoAndPlay(); hasta ahi normal, ahora quiero que los clips se muestren solos despues de determinado tiempo, ok uso setInterval y pongo este codigo en el primer frame

Código :

function movimiento() {
   setInterval(seguir, 1000);
};
function seguir() {
   nextFrame();
}

cabe anotar que cada frame tiene un stop(); entonces llamo la funcion con este codigo

Código :

movimiento ();
y bien funciona, se va de frame en frame, pero resulta que necesito parar el interval en ciertos puntos, ok clear interval...aqui va el primer problema, probe varias formas de pararlo y no se detiene :crap:

Código :

 clearInterval(movimiento)//no funciono..
movimiento.clearInterval(); //tampoco...
//lei en livedocs algo y se me ocurrio poner esto
function movimiento() {
   var test:Number = setInterval(seguir, 1000);
      setInterval(seguir, 1000);
};

//y para detenerlo
clearInterval(test); //y adivinen...tampoco  ^^ 

ahora viene lo que supongo es mas complicado, los clips estan compuestos de varios frames internos, cada frame contiene algun dato, texto o imagen, y esos necesito que se vean de igual manera solos, entonces seria algo como llamar al clipA y que se ejecute en el frame 1 y luego pasara al dos y cuando llegue al ultimo se salga y pase al clipB y de la misma forma se ejecute lo que contiene y asi sucesivamente.... entonces cambie el nextFrame de la funcion movimiento por algo asi como esto

Código :

function seguir() {
   clipA.gotoAndPlay(1);
}

y no funciono, entonces probe a ver si podia ejecutar el clip

Código :

function seguir() {
   clipA.play();
}
y tampoco...conclusion no se como ejecutar el clip internamente, se me ocurre pasarle por parametro el nombre de el clip y los tiempos del set interval, pero si no puedo ejecutar ni un clip estoy mal, ademas queda lo del clear interval...
cualquier cosa que me puedan ayudar se los agradeceria ^^

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox
Citar            
MensajeEscrito el 26 Jul 2006 05:55 pm
Ejem... hace rato que no pasaba por el foro de ActionScript, espero no haberme vuelto viejo u obsoleto...

Bueno, la sintaxis que viste en LiveDocs es correcta, sólo debes hacer que la variable no sea local, sino que esté disponible para toda la línea de tiempo de la película, algo como:

Código :

var myInterval:Number
function avanzar():Void {
    nextFrame();
}function aplicar():Void {
    myInterval = setInterval(avanzar, 1000);
}
//Y en cualquier otro frame...
clearInterval(myInterval);


Ahora, para trabajar con los clips se me ocurre que podrías modificar la función avanzar, para que evaluara si se terminó un clip y siga al otro, algo como:

Código :

function avanzar():Void {
    clipA._currentframe<clipA._totalframes ? clipA.nextFrame() : clipB.nextFrame();
}


O hacerla como mejor te convenga...

Saludos.

Por ExGaul

Claber

180 de clabLevel



Genero:Masculino  

Cereté - Colombia

firefox

 

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