SETINVERVAL dans une boucle FOR ?

Résolu
cs_capelleg Messages postés 25 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 24 mai 2008 - 30 avril 2008 à 15:08
faiblard Messages postés 337 Date d'inscription samedi 3 février 2007 Statut Membre Dernière intervention 4 janvier 2011 - 30 avril 2008 à 18:18
Bonjour,
J'ai le code suivant qui marchent très bien et qui m'affiche donc 6 movie clip avec un peu de mise en forme.
Mais je souhaite provoquer l'affichage de ces 6 movie clip de manière légérement décalée, et non d'une traite comme le fait ma boucle FOR...

J'ai du mal à caser un SetInterval pour temporiser les choses... je ne sais pas ou le placer...

spacing = 130;
pre = 30 ;
sec = 60 ;

function maFonction (){
this.attachMovie("conteneur", "conteneur"+i, i);
};

for (i=1 ; i<=6 ; i++) {
    maFonction();

    if (i>3)
    {
    this["conteneur"+i]._x = (sec+i*spacing-3*spacing);
    this["conteneur"+i]._y = (+200);
    }
    else {
    this["conteneur"+i]._x = pre+i*spacing;
    this["conteneur"+i]._y = (+100);
    }

};

Merci à vous

2 réponses

dj_ouf Messages postés 221 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 6 septembre 2011
30 avril 2008 à 16:33
Salut,

Tu ne dois en fait pas utiliser de boucle car en effet l'incrémentation de la boucle se fait instantanément.

En fait tu dois garder ta fonction "maFonction" comme tu l'as fait, mais l'appelée à toutes les x secondes à partir d'un setInterlval et compter les instances pour annuler l'interval une fois le nombre d'instances maximum atteint (avec clearInterval)

ex :
var delay = 2000;
var nbInstances = 0;

function maFonction() {
    nbInstances++:
    this.attachMovie("conteneur", "conteneur"+i, i);
    // ajustement du conteneur sur la scène
    if (nbInstances>6) clearInterval(interval);
}
var interval = setInterval( "maFonction" , delay );

(delay correspond à delai entre 2 instances (en ms, donc 2s) )
3
faiblard Messages postés 337 Date d'inscription samedi 3 février 2007 Statut Membre Dernière intervention 4 janvier 2011
30 avril 2008 à 18:18
Bonjour,

Je dirais plutot de manière quasi instantané ;)

Et au passage dj_ouf il est préférable dans ce cas de faire le clearInterval, directement apres l'incrémentation de nbInstances... Car cela peut éviter des probleme si on réduit de beaucoup l'interval meme si dans le cas présent cela ne doit pas poser de probleme ^^

-------------------------------------------------------------------
La recherche est ton amie ! Promis elle ne te mordra pas...
Enjoy
N'oubliez pas d'accepter pour aidez les autres quand ils cherchent !
3
Rejoignez-nous