Page 1 sur 1

Fonction à jouer en boucle

Posté : 07 nov. 2011, 06:17
par Megadeth
Bonjour,

Il est 5h, Paris s'éveille :)

Je cherche le moyen de boucler sur une fonction. En fait j'aimerai qu'elle se joue ad vitam aeternam ou bien n fois.

J'ai essayé bêtement un for i ou un while en vain...

Il s'agit d'un diaporama perso et je ne vois pas comment je peux lui dire arriver à terme, tu repars à 0 à l'état 1.

L'exemple peut être pris avec tu dois fermer 10 fois une alert par exemple.

Merci de votre aide.

Mega
;)

Re: Fonction à jouer en boucle

Posté : 07 nov. 2011, 09:54
par xTG
Regardes du côté de setInterval().

Re: Fonction à jouer en boucle

Posté : 07 nov. 2011, 11:14
par Megadeth
Re xTG et merci :)

Par contre ma fonction débute sur l'événement onload de body hors apparemment pour placer mon setInterval il me faut une variable var x = setInterval...

Ca va pas être problématique ?

Bien cordialement,

Mega
;)

Re: Fonction à jouer en boucle

Posté : 07 nov. 2011, 12:51
par xTG
A la fin de ta fonction tu mets ton setInterval rappelant la même fonction. ;)

Re: Fonction à jouer en boucle

Posté : 07 nov. 2011, 17:25
par Megadeth
Re xTG,

J'ai essayé mais je crois qu'il n'aime pas le rappel via var x = setInterval...

Voici mon code qui marche 1 fois, si tu veux bien y jeter ton oeil averti, je m'appuie sur du jquery et du scriptaculous comme tu peux voir ;)

Code : Tout sélectionner

function mondiapo(){ new Effect.Appear('div1', {delay:8, duration:4, fps:40, from:0.0, to:1.0}); Effect.Fade('div1', {delay:12, duration:4}); new Effect.Appear('div2', {delay:16, duration:4, fps:40, from:0.0, to:1.0}); Effect.Fade('div2', {delay:20, duration:4}); new Effect.Appear('div3', {delay:24, duration:4, fps:40, from:0.0, to:1.0}); Effect.Fade('div3', {delay:28, duration:4}); }
Mega
;)

Re: Fonction à jouer en boucle

Posté : 08 nov. 2011, 10:52
par Megadeth
Bonjour,

C'est résolu !!!

Grâce à toi xTG (qu'est ce que je peux me compliquer la vie parfois :roll:)

Après ma fonction, en dehors de celle-ci j'ai placé un :

Code : Tout sélectionner

var kiloop=setInterval("mafonction", 20000);
Mega
;)

Re: Fonction à jouer en boucle

Posté : 08 nov. 2011, 11:24
par xTG
En fait si tu avais voulu la mettre à l'intérieur il fallait l'enregistrer dans une variable globale et non dans une variable locale à la fonction. ;)

Re: Fonction à jouer en boucle

Posté : 23 nov. 2011, 12:57
par Megadeth
Re xTG,

Je reviens sur le sujet car j'ai une petite interrogation sup'

Est-ce qu'on peut différer le début de l'intervalle c'est à dire s'assurer que la fonction a bien été jouée une fois complètement pour lancer l'intervalle sans faire de boucle infinie ou de conflit avec la même fonction, car on est d'accord que pour lancer directement la fonction il faut jouer sur le onload mais le chargement de ma page me pose un problème.

Le setInterval me plait bien mais si je comprends bien ca démarre au bout de n secondes et pas une première fois puis ensuite toutes les n secondes...

Je ne sais pas si je suis clair.

Mega
;)