Probleme settimeout pour afficher plusieur texte à la suite

Résolu
Signaler
Messages postés
3
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
15 avril 2008
-
Messages postés
3
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
15 avril 2008
-
Bonjour,

Je cherchais sur le web un script pour afficher plusieurs texte, stocker dans un tableau, à la suite et j'en ai trouvé un qui le fait mais avec des images. Je me décide alors de récupérer le script et de le modifié ce qui ne doit pas être trop compliqué mais je coince à cause de la fonction settimeout. Voici le code:
[script]
<script language="JavaScript" type="text/javascript">
  // tableau de toute la sequence
 var tab_url = ["test.fr","test.com","test.org"];
 var i = 0;
function Animation(ligne) {

 if(i > tab_url.length) i = 0;
 ligne = ligne+tab_url[i]+"";
 document.write(ligne);
 i = i + 1;
 window.setTimeout("Animation("+ligne+")",2000);
 //On affiche chaque image pendant 2s
 }
Animation();
</script>


/script

Tout ce passe bien pour le passage du premier texte au second, mais aprés il coince et il me répond que la fonction animation n'est pas définit. Si quelqu'un peut m'aider ou à quelque chose de plus simple à me proposer pour le meme résultat ce serai cool.
Merci

3 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Bonjour,
document.write(

tab_url[i]+"");



efface le contenu du document avant d'écrire,
donc ton script est DESTROY
remplace par
document.body.innerHTML += tab_url[i]+"";
juste pour voir la diffèrence
est utilise un DIV dans lequel tu mettras
ton résultat grâce à innerHTML
;O)
Messages postés
3
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
15 avril 2008

Rectification le code c'est ça:

[script]
<script language="JavaScript" type="text/javascript">
  // tableau de toute la sequence
 var tab_url = ["test.fr","test.com","test.org"];
 var i = 0;
function Animation(ligne) {
 if(i > tab_url.length) i = 0;
 document.write(tab_url[i]+"");
 i = i + 1;
 window.setTimeout("Animation("+ligne+")",2000);
 //On affiche chaque image pendant 2s
 }
Animation();
</script>
/script
Messages postés
3
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
15 avril 2008

Nikel ça marche merci^^