Ich habe mein neues Menü mit einem CSS Script gemacht, funktioniert toll! Es klappt sich auf, wenn man auf einen Menü punkt klicken:
Menü1
- Untermenü1
- Untermenü2
Menü2
- Untermenü3
- Untermenü4
Jetzt habe ich bloss 2 Probleme:
1. Das Menü klappt sich komplett aus. => Kann man das so coden, dass wenn man auf Menü2 klickt, sich Menü 1 wieder schließt?
2. Beim Laden der Seite zeigt sich das komplett ausgeklappt menü für 1-2 sekunden. Kann man das verhindern?
<style type="text/css"> <!-- body { font-family: Arial, sans-serif; font-size: 13px; overflow: auto; padding: 0px; margin: 0px; border: 0px; } #menu, #menu ul { padding: 1px; margin: 0px; } #menu li { border: 0px solid #fff; list-style-type: none; font-weight: bold; cursor: pointer; display: block; margin-right: 15px; } #menu a { text-decoration: none; font-weight: normal; padding-left: 0px; display: block; } .imageStyle { margin-left: 40px; } //--> </style> <script type="text/javascript"> <!-- function hideSub() { if (!document.getElementsByTagName) return; var mnu = document.getElementById('menu'); var toplis = mnu.getElementsByTagName('li'); for (var it = 0; it < toplis.length; it++) { var sublis = toplis[it].getElementsByTagName('li'); for (var is = 0; is < sublis.length; is++) if (sublis[is].style) sublis[is].style.display = (toplis[it].className == 'block') ? 'show' : 'none'; } } function mShow(Me) { if (!Me.getElementsByTagName) return; var mylis = Me.getElementsByTagName('li'); if (!mylis) return; for (j = 0; j < mylis.length; j++) mylis[j].style.display = (mylis[j].style.display == 'block') ? 'none' : 'block'; } //--> </script>
und
<ul id="menu"> <li onclick="mShow(this);"> <br /><br /><div align="right">Menü1 <ul> <li><a href="#">Untermenü1</font></a></li> <li><a href="#">Untermenü2</a></li> </ul> </div> </li> <li onclick="mShow(this);"> <div align="right">Menü2 <ul> <li><a href="#">Untermenü3</a></li> <li><a href="#">Untermenü4</a></li> </ul> </div> </li> </ul> </div> </li> </ul>
Kann mir jemand helfen?
Achja, es steht außer Frage, ob das Script die beste möglichkeit für sowas ist oder nicht. Es funktioniert alles gut und ich will jetzt nix mehr ändern ;-)
Nur die 2 Fragen nerven mich noch!