Archivlink: javarea.de Forum > JavaScript > Problem mit "Foldoutmenü vertikal"
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Problem mit "Foldoutmenü vertikal"

Pages: [1]

geschrieben von Tobi14 am 15.06.2007 - 17:34
Hallo,

ich habe ein Problem mit meinem "Foldoutmenü vertikal":

Beim 1. Code kann man das Untermenü wieder schließen, wenn man auf den Oberpunkt klickt, aber der Nachteil ist dass das Untermenü auch automatisch wieder geschlossen wird wenn man einen Link darin anklickt.

1. Code:
Zitat
 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 == 'show') ? 'block' : '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';
}


Beim 2. Code klappt das Untermenü erst wieder ein, wenn man auf einen anderen Oberpunkt klickt.

2. Code:
Zitat
 function hideSub( )
{
if (!document.getElementsByTagName)
return;
var mnu = document.getElementById("menu");
var toplis = mnu.getElementsByTagName("li");
for (it = 0; it < toplis.length; it++) { /* each top li */
var sublis = toplis[it].getElementsByTagName("li");
for (is = 0; is < sublis.length; is++) { /* each sub li */
sublis[is].style.display = 'none';
}
}
}
function mShow(Me)
{
if (!Me.getElementsByTagName)
return;
// alle menus einklappen
hideSub();
var mylis = Me.getElementsByTagName("li");
if (!mylis)
return;
for (j = 0; j < mylis.length; j++) {
if (mylis[j].style.display == 'block')
mylis[j].style.display = 'none';
else
mylis[j].style.display = 'block';
}
}


Mein Problem ist dass ich das Ganze gerne so hätte dass
- man wie beim 1. Code das Untermenü wieder schließen kann, wenn man auf den Oberpunkt klickt
- wie beim 2. Code das Untermenü sich erst wieder schließt, wenn man auf einen anderen Menüpunkt klickt und nicht wie beim 1. Code wenn man einen Link anklickt

Ich hoffe mir kann jemand helfen weil ich leider gar keine Ahnung von JavaScript habe


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.