Hola, yo tengo el mismo problema que nanshan: una función que debe ejecutarse cada 10 segundos, pero que se demora esos 10 segundos en arrancar.
Si no he entendido mal, se trada de ejecutar primero "lo que hace la función", y acto seguido, la llamada al setInterval, no?
Mi problema es que la funcion que quiero llamar cada X segundos es un poco más larga y, además, se trata de una función que cada vez pasa un parámetro diferente según un contador (se trata de un rotador de banners en orden aleatorio).
El código js es este (la variable php $randomatic es una cadena de texto separada por comas):
Código:
function bannSup(){
$quins = "<?echo $randomatic?>";
$banners = $quins.split(',')
$quants = $banners.length;
if ($actual<$quants) {
$actual=$actual+1;
} else {
$actual=1;
}
var idban=$banners[$actual-1];
$.post("bannersup.php", { idBan: idban }, function(data){
$("#bannersup").hide().unload().delay(500).html(data).fadeIn();
});
}
$actual = 1;
setInterval("bannSup()", 10000);
Como puedo ejecutar la función al arrancar y luego ejecutarla cada 10 segundos, sin tener que duplicar todo el código de la función? O como puedo optimizar la función?
Muchas gracias!
Edito:
Ups! Ahora he visto que este es el subforo de Actionscript, y no el de Javascript... Siento la confusión, pero es que la misma función se llama igual en los dos lenguajes...