http://fr.selfhtml.org/javascript/ [...] es.htm#src
<script type="text/javascript">
<!--
var b = new Array();
b[0] = new Image(); b[0].src = "henri.gif";
b[1] = new Image(); b[1].src = "hilmar.gif";
b[2] = new Image(); b[2].src = "heiner.gif";
b[3] = new Image(); b[3].src = "hans.gif";
var i = 0;
function Animation()
{
if(i > 3) i = 0;
document.images[0].src = b[i].src;
i = i + 1;
window.setTimeout("Animation()",1000); <====
}
window.setTimeout("Animation()",1000); <=====
//--> |
je ne comprends absolument pour pourquoi il y a 2 window.setTimeout("Animation()",1000);
normallement, pour moi le premier devrait suffire. Je m'explique,
- une fois que que i est incrémenté de 1,
- on attends 1 secondes,
- puis on lance la fonction animation. En fait elle se rapelle elle-meme, c'est un peu du recursif.
- Ensuite on vérifie que i n'est pas plus grand que 3, si ce n'est pas le cas, on réinitialise la variable i à 0. Au 2ème passage, c'est faut. i vaut 2
- Ensuite on affecte le 2ème element du tableau (b[2].src) à document.images[0].src
- On incremente de i de 1
- On attend 1 secondes et on relance la fonction animation ()
Bref pour moi c'est une boucle infinie, il n'y a pas besoin de 2ème fonction. Pourquoi en ont il mis une ?