Javascript bug ?

Résolu
nEm3sis Messages postés 722 Statut Membre -  
nEm3sis Messages postés 722 Statut Membre -
Bonjour,

j'ai un probleme en javascript
et je ne sais pas pourquoi ca ne fonctionne pas


mon code commence par (entre autre)
<script src="js.js" type="text/javascript"></script>

puis plus tard j'ai
<td background="bar2.png" width="350" onmouseover="transp50(this)" onmouseout="transp100(this)" onclick="affplanete ()"><font align="center" class="rouge"><b>planete</b></font></td>

et a l'intérieur du fichier js.js j'ai :
function transp50(ici) {ici.style.MozOpacity="0.5"; ici.style.filter="alpha(opacity=50)";}
function transp100(ici) {ici.style.MozOpacity="1"; ici.style.filter="alpha(opacity=100)";}

et la, la console d'erreur de firefox me sort :
transp50 et transp100 sont non défini

quelq'un pourai m'eclairer?


pour les source completes tout est disponible ici :
http://to.kc.free.fr/OG/OGBatab.html
http://to.kc.free.fr/OG/calculer.js
http://to.kc.free.fr/OG/apercu.js
http://to.kc.free.fr/OG/js.js

6 réponses

Posotaz Messages postés 505 Statut Membre 225
 
Salut,

C'est normal, au moment où l'instruction
var d=document.planete;
est exécutée, le document n'est pas encore chargé et donc le formulaire planete n'existe pas. Il faut le faire tout à la fin de te page HTML (ou au début de la fonction apercu()) et là la variable "d" contiendra bien le input du formulaire planete ;-) Il te suffit de faire un alert() de la variable qui pose problème quand tu doutes, ça te permet de savoir ce qu'elle contient, c'est comme ça que j'ai procédé pour débugguer ce morceau de code.
1
Posotaz Messages postés 505 Statut Membre 225
 
Salut nEm3sis,

Alors avant de m'attarder sur le problème des fonctions inconnues j'ai regardé les erreurs plus générales et dans ton fichier js.js, les deux dernières fonctions ont une erreur de syntaxe : tu as oublié de placer la confition du if entre parenthèses.

Essaie déjà de corriger les problèmes qui surviennent avant de déclencher l'appel aux fonctions transp50 et transp100, tu y verras plus clair parce qu'apparemment y'a quelques problèmes de variables indéfinies aussi. ;-)
0
nEm3sis Messages postés 722 Statut Membre 113
 
a zut j'avai pas vu

j'ai corrigé ca
par contre les probleme de variable indéfinie ca je compren pas
quand je clic sur apercu (en bas de la page)

la console d'erreur me dit
d has no property 
ce qui veu dire que ma variable d n'a pas étée prise en compte
pourtant elle est au début du fichier js.js :
var d=document.planete;


pourquoi n'est-elle pas prise en compte ?


ps : merci de ton aide Posotaz :)
0
Serge_La Messages postés 408 Statut Membre 47
 
Bonsoir,
non ta variable est bien définie mais elle n'a pas de propriété. d.nom1.autrechose n'est pas défini.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nEm3sis Messages postés 722 Statut Membre 113
 
d = document.planete
donc d.nom1.value = document.planete.nom1.value

or dans le html j'ai :

<FORM NAME="planete">
<input name="nom1" type="text" size="6" value="pm" />

donc d.nom1.value existe !
dans c cas c'est obligé d qui n'est pas défini
0
nEm3sis Messages postés 722 Statut Membre 113
 
j'ai mis
<script src="calculer.js" type="text/javascript"></script>
<script src="apercu.js" type="text/javascript"></script>
<script src="js.js" type="text/javascript"></script>

a la fin du html et ca fonctionne

merci Posotaz :D
0