jfnoe
Messages postés15Date d'inscriptionlundi 20 janvier 2003StatutMembreDernière intervention11 janvier 2011
-
23 avril 2009 à 15:14
jfnoe
Messages postés15Date d'inscriptionlundi 20 janvier 2003StatutMembreDernière intervention11 janvier 2011
-
25 avril 2009 à 10:43
Bonjour,
Je voudrais utiliser un script de fondu d'image mais je n'arrive pas à le mettre en boucle.
Le script s'éxécute correctement mais j'ai une erreur à la fin.
J'ai essayer de faire une boucle avec FOR, mais ca ne marche pas non plus.
Voici le code :
var visuel_n=0;
function Visuel_Fondu()
{
if(document.all)
{
document.getElementById("visuel_" + VisuelPosChange).filters.alpha.opacity=visuel_n;
visuel_n+=5;
if ( visuel_n<= 100 )
{
setTimeout("Visuel_Fondu()", 50);
return 0;
}
}
else
{
document.getElementById("visuel_" + VisuelPosChange).style.setProperty("-moz-opacity", visuel_n, "");
visuel_n+=0.05;
if ( visuel_n<= 1 )
{
setTimeout("Visuel_Fondu()", 50);
return 0;
}
}
visuel_n=0;
document.getElementById("visuel").style.background="url('" + VisuelTab[VisuelPosChange][0] + "') -4px 0px no-repeat";
setTimeout("Visuel_Clear()", 100); //supprime clignotement sous FF
//document.getElementById("visuel").innerHTML="";
//setTimeout("Visuel_Defil()", 3000);
}
function Visuel_Clear()
{
document.getElementById("visuel").innerHTML="";
setTimeout("Visuel_Defil()", 3000);
}
var VisuelPos=0;
var VisuelPosChange;
function Visuel_Defil()
{
VisuelPosChange=VisuelPos;
VisuelPos++;
if ( VisuelTab.length <= VisuelPos )
VisuelPos=0;
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 25 avril 2009 à 09:19
Bonjour,
Tu bosses surement avec IExplorer...
Ce n'est pas un problème de boucle
mais de déclaration de tableau
ta déclaration
var VisuelTab = [
["image1.jpg",1],
["image2.jpg",1],
["image3.jpg",1] ,
];
IExplorer retournera une longueur de tableau de 4,
les autres 3, le dernier après la virgule et non défini, n'étant pas pris en
compte.
Comme tu testes
if ( VisuelTab.length < = VisuelPos )
cela plante sur le
dernier indice.
Supprimes la dernière virgule ou testes si l'élément est
défini
if(
VisuelTab[VisuelPosChange] && VisuelTab[VisuelPosChange][1] == 1
)
dans ce cas attention à l'incrémentation de la variable VisuelPos sur le dernier passage.