[JS] [Résolu] Compatibilité Mozilla

Compatibilité Mozilla [JS] [Résolu] - HTML/CSS - Programmation

Marsh Posté le 01-03-2004 à 16:21:48    

Bonjour,
 
J'ai écrit un petit système de menu en Javascript, mais mon code ne semble pas fonctionnel sous Mozilla alors que celui-ci est tout à fait géré par Opera et IE.
 
Voici mon code :
 
- menu.js :  

Code :
  1. function UpdateMenu(btn){
  2. var liens = '';
  3. btn.src = './images/design/on_' + btn.id + '.gif';
  4. if(btn != btn_accueil){ btn_accueil.src = './images/design/off_btn_accueil.gif'; }
  5. if(btn != btn_actualite){ btn_actualite.src = './images/design/off_btn_actualite.gif'; }
  6. if(btn != btn_services){ btn_services.src = './images/design/off_btn_services.gif'; }
  7. if(btn != btn_entreprises){ btn_entreprises.src = './images/design/off_btn_entreprises.gif'; }
  8. if(btn != btn_liens){ btn_liens.src = './images/design/off_btn_liens.gif'; }
  9. if(btn != btn_chercheurs){ btn_chercheurs.src = './images/design/off_btn_chercheurs.gif'; }
  10. if(btn.id == 'btn_accueil'){ liens = '<a href="?" class="lien_menu">Homepage</a> - ...'; }
  11. else if(btn.id == 'btn_actualite'){ liens = '<a href="?" class="lien_menu">News</a> ...'; }
  12. else if(btn.id == 'btn_services'){ liens = '<a href="?" class="lien_menu">Argent Solidaire</a> - ...'; }
  13. else if(btn.id == 'btn_entreprises'){ liens = '<a href="?" class="lien_menu">Annuaire</a> - ...'; }
  14. else if(btn.id == 'btn_liens'){ liens = '<a href="?" class="lien_menu">Sites d\'économie sociale</a> - ...'; }
  15. else if(btn.id == 'btn_chercheurs'){ liens = '<a href="?" class="lien_menu">Belgique</a> - ...'; }
  16. menu_liens.innerHTML = liens;
  17. }


 
Note : Apparemment seule la ligne "btn.src = './images/design/on_' + btn.id + '.gif';" semble être prise en compte par Mozilla.
 
 
- dans mes pages :

Code :
  1. ...
  2. <script type="text/JavaScript" src="menu.js"></script>
  3. ...
  4. <body onload="UpdateMenu(btn_accueil)">
  5. ...
  6. <div id="menu">
  7.   <div id="menu_choix">
  8.     <img src="./images/design/on_btn_accueil.gif" id="btn_accueil" onmouseover="UpdateMenu(this)" alt="Accueil" />
  9.     <img src="./images/design/off_btn_actualite.gif" id="btn_actualite" onmouseover="UpdateMenu(this)" alt="Actualité" />
  10.     <img src="./images/design/off_btn_services.gif" id="btn_services" onmouseover="UpdateMenu(this)" alt="Services" />
  11.     <img src="./images/design/off_btn_entreprises.gif" id="btn_entreprises" onmouseover="UpdateMenu(this)" alt="Entreprises" />
  12.     <img src="./images/design/off_btn_liens.gif" id="btn_liens" onmouseover="UpdateMenu(this)" alt="Liens" />
  13.     <img src="./images/design/off_btn_chercheurs.gif" id="btn_chercheurs" onmouseover="UpdateMenu(this)" alt="Chercheurs" />
  14.   </div>
  15.   <div id="menu_liens">&nbsp;</div>
  16. </div>


 
Voilà ^^
 
Toute aide est la bienvenue pour résoudre mon problème de compatibilité. Merci.


Message édité par Gogo_ le 01-03-2004 à 17:10:32
Reply

Marsh Posté le 01-03-2004 à 16:21:48   

Reply

Marsh Posté le 01-03-2004 à 16:23:42    

if(btn.id == 'btn_accueil')
 
=> if(document.getElementById(btn) == 'btn_accueil')
 
:??:

Reply

Marsh Posté le 01-03-2004 à 16:27:20    

heu non pas vraiment : getElementById te renvoie l'élément
btn est déjà l'élément, vu qu'il le passe en paramètre (this)
 
par contre :
if(btn != btn_accueil)
->
if(btn.id != 'btn_accueil') (comme t'as fait pour celui que fastclemmy a relevé, qui était juste en fait)
ou
if(btn != document.getElementById('btn_accueil'))


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 01-03-2004 à 16:31:16    

antp a écrit :


par contre :
if(btn != btn_accueil)
->
if(btn.id != 'btn_accueil') (comme t'as fait pour celui que fastclemmy a relevé, qui était juste en fait)


 
:o
 
[HS for="antp"]
http://forum.hardware.fr/forum2.ph [...] =1#t436215
[/HS]

Reply

Marsh Posté le 01-03-2004 à 17:11:40    

Je viens de trouver grâce à vos réponses. En utilisant document.getElementById à divers endroits, ça fonctionne désormais sur les 3 navigateurs ^^

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed