Thomas Meinike: objs[nr].style.display = "block" Probl. beim IE6

Beitrag lesen

Hallo,

habe es ausprobiert, aber leider ohne Erfolg. Beim IE6 erscheint die gleiche Fehlermeldung und beim NC6 rollen die Menüs nicht mehr aus...

Du hast es offenbar nicht richtig uebernommen, so klappt es bei mir unter IE 6 und Mozilla 1.2.1:

<html>
<head>
    <style type="text/css">
        ul.Menu   { display:none;}
    </style>
</head>

<body>

<script type="text/javascript">
function setVisible( nr ){
    // objs = document.getElementsByName( "Menu" );
    objs = document.getElementById("abc").getElementsByTagName("ul");

// Erst alle unsichtbar machen
    for( i = 0; i < objs.length; i++ ){
        objs[i].style.display = "none";
    }
    // Das gewünschte sichtbar machen
    objs[nr].style.display = "block";
}
</script>

<ul id="abc">
    <li class="alle" ><a href="#" onMouseOver="setVisible(0);" onClick="return false;">Auto</a>
    <ul class="Menu">
        <li><a href="" target="">Audi</a></li>
        <li><a href="" target="">BMW</a></li>
        <li><a href="" target="">Fiat</a></li>
        <li><a href="" target="">Mercedes</a></li>
    </ul></li>
    <li class="alle"><a href="#" onMouseOver="setVisible(1);">Garten</a>
    <ul class="Menu">
        <li><a href="" target="">Rasen</a></li>
        <li><a href="" target="">Blumen</a></li>
        <li><a href="" target="">Gemüse</a></li>
        <li><a href="" target="">Bäume</a></li>
    </ul></li>
    <li class="alle"><a href="#" onMouseOver="setVisible(2);">Urlaub</a>
    <ul class="Menu">
        <li><a href="" target="">Hintertux</a></li>
        <li><a href="" target="">Bretagne</a></li>
        <li><a href="" target="">Toskana</a></li>
        <li><a href="" target="">Schottland</a></li>
    </ul></li>
</ul>

</body>
</html>

BTW: Das Script wuerde ich eher im HEAD anlegen, aber es wird auch an dieser Stelle im BODY noch frueh genug gelesen.

MfG, Thomas

PS: Deine komischen <li li-Konstrukte habe ich korrigiert.