Voyez vous une erreur dans mon script?
Bonjour,
J'ai trouver ce code pour 33 images.
Il va afficher des images dans un ordre aléatoire.
Dans mon cas , je ne comprend pas pourquoi, de temps en temps il n'affoche pas d'image. Dans le cas ou auncuen images est affichée, dans mon code source, dands herf="", il affiche undefined.
Voici le code voyez vous une erreur?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
// JavaScript Document
var pic1=new Array("",
"http://www.domaine.com/rss/col-right/1.jpg",
"http://www.domaine.com/rss/col-right/2.jpg",
"http://www.domaine.com/rss/col-right/3.jpg",
"http://www.domaine.com/rss/col-right/4.jpg"
); // tableau des noms d'images
var mis1=new Array(4); // tableau des indicateurs 'image tirée'
for(i1=1;i1<5;i1++) {mis1[i1]=0;} // Initialisation à zéro des indicateurs 'image déjà tirée'
total1=0; // pour trouver rapidement la dernière image
for(i1=1;i1<4;i1++) // on va boucler sur nombre d'images moins un
{ mis1[i1]=1+Math.round(Math.random()*4); // tirer aléatoirement un nombre dans mis(i)
trouve1=0; // supposons que l'image ne soit pas encore tirée
for (j1=1;j1<i1;j1++) // voyons si cette image a été tirée
{if (mis1[j1]==mis1[i1]) {trouve1=1;} } // si oui
if (trouve1==1) {i1=i1-1;} // recommencer à tirer
if (trouve1==0) {total1=total1+mis1[i1];} // sinon la compter
}
mis1[4]=10-total1; // 10=4+3+2+1 donc il manque 10-total
var i1=1+Math.round(Math.random()*7);
function change1() // la fonction temporisée qui change d'image
{document.pic1.src=pic1[mis1[i1]];
i1++;if(i1>4){i1=1;}// Attention à rester dans les 8 images ;)
setTimeout("change1()", 3000);// Toutes les 5 secondes
} |
Merci