Erreur de script sous IE

Signaler
Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008
-
Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008
-

6 réponses

Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008

Bonjour à tous,
Je viens vers vous aujourd'hui pour tenter de résoudre un petit problème de code JS.
J'ai un script JS qui doit me faire defiler des images avec un fondu.

J'ai le code suivant :


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()", 100);
return 0;
}
}
else
{
document.getElementById("visuel_" + VisuelPosChange).style.setProperty("-moz-opacity", visuel_n, "");
visuel_n+=0.05;
if ( visuel_n<= 1 )
{
setTimeout("Visuel_Fondu()", 100);
return 0;
}
}
visuel_n=0;
document.getElementById("visuel").style.background="url('" + VisuelTab[VisuelPosChange][0] + "') 0px 0px no-repeat";
setTimeout("Visuel_Clear()", 100); //supprime clignotement sous FF
//document.getElementById("visuel").innerHTML="";
//setTimeout("Visuel_Defil()", 4000);
}
function Visuel_Clear()
{
document.getElementById("visuel").innerHTML="";
setTimeout("Visuel_Defil()", 6000);
}
var VisuelPos=0;
var VisuelPosChange;
function Visuel_Defil()
{
VisuelPosChange=VisuelPos;
VisuelPos++;
if ( VisuelTab.length <= VisuelPos )
VisuelPos=0;

if ( VisuelTab[VisuelPosChange][1] == 1 )
document.getElementById("visuel").innerHTML+="";
else
{
setTimeout("Visuel_Defil()", 10);
return 0;
}
Visuel_Fondu();
}
var VisuelTab = [
["images1.jpg",1],
["images2.jpg",1],
];
Visuel_Defil();


Et comme d'habitude, tout tourne bien sous Firefox mais une erreure récurente apparît sous IE de type :


Ligne : 45
Car : 2
Erreur :'VisuelTab[...].1' a la valeur Null ou n'est pas un objet.
Code : 0
URL : ...



N'ayant pas les compétences nécessaires en JS (pas encore en tout cas) avez-vous une solution à me proposer ?
Merci

Yoann
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
bonjour,

comme d'habitude surtout on ne donne que la moitié des choses pour regarder...
le html ? il faut l'inventer ?    la ligne 45 c'est laquelle ?

en plus, si on le fait, peut-être que ça va fonctionner !!!!

je suis bien certain que comme d'habitude, tu dois faire une
       erreur et que le pôvre IE n'y est pour rien....

Cordialement

          [mon Site] [M'écrire] Bul           
Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008

Ola excuse moi ...

Alors dans l'ordre, voici le code Html associé :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title></title>
</head>




<script type="text/javascript" src="visuel_sans_ajax.js"></script>

</html>

La ligne 45 c'est celle-ci :

document.getElementById("visuel").innerHTML+="";

Encore désolé pour le manque d'information sur mon premier post. Personnellement je suis pas en mesure de dévellopper le moindre code en JS, ne n'en suis qu'au balbutiment. Ce code à été récupéré sur internet et l'erreur provient surement du code je n'en doute pas, je ne remet pas en cause IE mais c'est vrai que beaucoup de monde développe pour FF est ne s'inquiète pas forcement des erreurs sur IE ...

Je remercie la personne qui pourra m'aider sur ce petit problème.

Cordialement
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
function Visuel_Clear()
{    document.getElementById("visuel").innerHTML="";
    document.getElementById("visuel").style.background="";
    setTimeout("Visuel_Defil()", 2000);
}
mais surtout :
var VisuelTab = [
    ["images1.jpg",1],
   ["images2.jpg",1]    ];

>>mais c'est vrai que beaucoup de monde développe pour FF
>>est ne s'inquiète pas forcement des erreurs sur IE .

euh... t'es pas sérieux là ? si ?
la très très grosse majorité des utilisateurs est sous IE,

ceux qui développent sans tenir compte de IE,
ne sont pas dans la vie professionnelle mais
dans le monde des amateurs ( et encore ! la
plupart sont des gens sérieux quand même  ! )

Cordialement

          [mon Site] [M'écrire] Bul         
Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008

Ok merci je vais tester ça je te tiens au courant.

>>euh... t'es pas sérieux là ? si ?
>>la très très grosse majorité des utilisateurs est sous IE,

J'ai parlé des personnes qui programme pas les utilisateurs. Je suis tout à fait d'accord et trouve ça hallucinant les personnes qui ne test pas leur script sur des multi-plateformes (surtout une comme IE).
Messages postés
6
Date d'inscription
jeudi 6 janvier 2005
Statut
Membre
Dernière intervention
7 décembre 2008

Ok le problème est résolu mais seulement avec le :

>> var VisuelTab = [
>> ["images1.jpg",1],
>> ["images2.jpg",1] ];

Avec ta première correction, l'image disparait après le chargement.

En tout cas, merci, l'erreur a disparu et le code tourne nickel,

Merci et à bientôt