Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/08/2007, 21:58
index000
 
Fecha de Ingreso: febrero-2005
Mensajes: 183
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: problema con carrusel de fotos y setTiemouts

Es el tipico problema de un usuario cuando encuentra funciones como esta, pero no te preocupes se soluciona muy facil, eh pasado muchos minutos de mi vida luchando con esto, en realidad debes matar el proceso de tiempo, el problema es q cada vez que llamas a "setTimeout" o "setInterval" volves a cargar el proceso de ejecucion, osea q si la llamaste dos veces a una misma funcion con setInterval estas duplicando la llamada, si la llamabas cada 2 segundos estarias llamandola cada 1, 1 ,1 ,1 y asi.

Codigo:

Primero q nada debes referenciar con un nombre de id a tu intervalo de tiempo, tanto para setTimeout() como para un simple setInterval().

Código:
//genero un id var para la llamada.
var llamado_a = setInterval(call_func, 2000);
//Funcion llamada
function call_func() {
	trace("funcione una vez sola y cuando me necesites volveme a llamar.");
//Elimino el intervalo de tiempo.
       clearInterval(llamado_a);
}
Para volver a llamar la funcion de intervalo de tiempo vuelves a invocar a:

Código:
var llamado_a = setInterval(call_func, 2000);
Osea q suponte q el cliente esta mirando fotos y tiene un boton de play/plause para seleccionar entre vista automatica o manual ok?
Crea un Boton play y otro pausa y ponele de nombre de instancia btn_play y pausa_btn y pega este codigo en el primer frame de tu pelicula.
Código:
var llamado_a = setInterval(call_func, 2000);
function call_func() {
	trace("funcione una vez sola y cuando me necesites volveme a llamar.");
	//clearInterval(llamado_a);
}
//
btn_play.onPress = function() {
	var llamado_a = setInterval(call_func, 2000);
};
//
pausa_btn.onPress = function() {
	clearInterval(llamado_a);
};
Si no se entendio me avisas, saludos suerte!

Última edición por index000; 14/08/2007 a las 22:01 Razón: correccion de ortografia.