login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Javascript Menu probleem?

Offline Chupskie - 12/07/2006 17:00 (laatste wijziging 12/07/2006 23:11)
Avatar van ChupskieMySQL beginner Ik krijg de volgende melding in IE en in FF:
Fout document.getElementById("parents") has no properties

Tevens werkt hij wel goed in FF! En IE werkt alleen de 1ste dropdown!

Dit is de gebruikte code:
  1. /* Dit is menu.htm */
  2. <script language="javascript" src="javascript.js"></script>
  3.  
  4. <ol id="nav" onMouseOver="test_verschijnen();" onMouseOut="test_verdwijnen();">
  5. <li>
  6. <div id="test"><b>TEST:</b></div>
  7. <ol>
  8. <li><a href="">Test 1 </a></li>
  9. <li><a href="">Test 2 </a></li>
  10. <li><a href="">Test 3 </a></li>
  11. </ol>
  12. </li>
  13. </ol>
  14. <ol id="nav" onMouseOver="test_verschijnen();" onMouseOut="test_verdwijnen();">
  15. <li>
  16. <div id="test2"><b>TEST:</b></div>
  17. <ol>
  18. <li><a href="">Test 1 </a></li>
  19. <li><a href="">Test 2 </a></li>
  20. <li><a href="">Test 3 </a></li>
  21. </ol>
  22. </li>
  23. </ol>
  24.  
  25. /* Dit is javascript.js */
  26. startList = function() {
  27. if (document.all&&document.getElementById) {
  28. navRoot = document.getElementById('nav');
  29. for (i=0; i<navRoot.childNodes.length; i++) {
  30. node = navRoot.childNodes[i];
  31. if (node.nodeName=="LI") {
  32. node.onmouseover=function() {
  33. this.className+=" over";
  34. }
  35. node.onmouseout=function() {
  36. this.className=this.className.replace(" over", "");
  37. }
  38. }
  39. }
  40. }
  41. }
  42. window.onload=startList;
  43.  
  44. var parents; var preafter;
  45.  
  46. function test_verschijnen() {
  47. //opslaan
  48. parents = document.getElementById('parents').innerHTML;
  49. preafter = document.getElementById('preafter').innerHTML;
  50.  
  51. document.getElementById('parents').innerHTML = '';
  52. document.getElementById('preafter').innerHTML = '';
  53.  
  54. }
  55.  
  56. function test_verdwijnen() {
  57. document.getElementById('parents').innerHTML = parents;
  58. document.getElementById('preafter').innerHTML = preafter;
  59. }


Kan iemand mij helpen?:|  (Me is helaas niet zo goed in javascript)

3 antwoorden

Gesponsorde links
Offline Ontani - 12/07/2006 19:04
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
een id moet uniek zijn.
dus 2x id="test" zal niet werken...
Offline Chupskie - 12/07/2006 23:11
Avatar van Chupskie MySQL beginner Ja, dat heb ik nu aangepast, maar het probleem is daardoor nog niet opgelost!

In Firefox, werkt het wel, zoals ik al zei.
En in Internet Explorer, werkt alleen het eerste menu, en bij de andere geeft hij die meldingen!
Bij Firefox geeft hij die melding in de Javascript Console!

Iemand nog een idee?:|
Offline Thomas - 13/07/2006 13:43 (laatste wijziging 13/07/2006 13:44)
Avatar van Thomas Moderator Dit is een suckerfish-menu, niet?
Dat stukje JavaScript is volgens mij een IE-fix. Je hebt 2 menu's, en waarschijnlijk voer je startList alleen uit voor het eerste menu (zie regel 28 - daarin komt die "nav" terug).
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.197s