A la valeur Null ou n'est pas un objet

Résolu
Ebnou_Ljabal Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -  
 Hamtoto -
Bonjour,
J'ai besoin de vos consiels.
je débute en javascript. Je tente de faire marcher ce code :
var cpt_btn=0;
do{
btn1[cpt_btn]=document.createElement("img");
btn1[cpt_btn].src=btn[cpt_btn].src_out;
btn1[cpt_btn].className=btn[cpt_btn].class_name;
btn1[cpt_btn].alt=btn[cpt_btn].alt;
btn1[cpt_btn].onmouseover=function (){btn1[cpt_btn].src=btn[cpt_btn].src_over;}
btn1[cpt_btn].onmouseout=function (){btn1[cpt_btn].src=btn[cpt_btn].src_out;}
btn1[cpt_btn].onclick=function (){document.location=(btn[cpt_btn].cible);}
menu.appendChild(btn1[cpt_btn]);
cpt_btn++;
}while (cpt_btn<btn.length)


Les lignes en gras ne marchent ni dans FireFox ni dans IE. Dans IE je recois le message btn1[...] a lavaleur Null ou n'est pas un objet.
Par contre quand je le fait sans la boucle ça marche cad:

btn1[0]=document.createElement("img");
btn1[0].src=btn[0].src_out;
btn1[0].className=btn[0].class_name;
btn1[0].alt=btn[0].alt;
btn1[0].onmouseover=function (){btn1[0].src=btn[0].src_over;}
btn1[0].onmouseout=function (){btn1[0].src=btn[0].src_out;}
btn1[0].onclick=function (){document.location=(btn[0].cible);}
menu.appendChild(btn1[0]);

btn1[1]=document.createElement("img");
btn1[1].src=btn[1].src_out;
btn1[1].className=btn[1].class_name;
btn1[1].alt=btn[1].alt;
btn1[1].onmouseover=function (){btn1[1].src=btn[1].src_over;}
btn1[1].onmouseout=function (){btn1[1].src=btn[1].src_out;}
btn1[1].onclick=function (){document.location=(btn[1].cible);}
menu.appendChild(btn1[1]);

btn1[2]=document.createElement("img");
btn1[2].src=btn[2].src_out;
btn1[2].className=btn[2].class_name;
btn1[2].alt=btn[2].alt;
btn1[2].onmouseover=function (){btn1[2].src=btn[2].src_over;}
btn1[2].onmouseout=function (){btn1[2].src=btn[2].src_out;}
btn1[2].onclick=function (){document.location=(btn[2].cible);}
menu.appendChild(btn1[2]);
.......
.......


Je sais que le problème est dans le passage du compteur cpt_btn aux fonctions anonymes.
Je vous remercie d'avance.

4 réponses

Raphux
 
J'adore ces gens qui exposent leur problèmes, disent avoir trouver la solution, mais qui ne l'expose pas, elle...
11
sonyc91
 
Pareil, merci pour les autres ...
0
Ebnou_Ljabal Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   6
 
c'est resoulu
1
Hamtoto
 
Arghh, j'ai le meme probleme mais sur un projet beaucoup plus gros que je doit reprendre. Le code marche tres bien sur un autre poste mais sur le mien l'erreur apparait. Je me dit donc que le probleme doit venir de la configuration de visualStudio ou du navigateur internet. Si vous avez des idées je suis tout ouie.
1
Hamtoto
 
Argh j'ai le meme souci avec un gros projet que je doit reprendre. le souci est que le projet marche tres bien sur un autre poste. Cela doit donc venir d'un probleme de configuration de visualStudio ou de l'explorer. Quelqu'un a une idee.
0