Untermenü anzeigen und ausblenden
Martin Breternitz
- javascript
Hallo!
Bei einem Menüpunkt wird beim Überfahren mit dem Mauszeiger ein Untermenü ausgeklappt. Das Untermenü ist zunächst nicht sichtbar (display:none) und wird mittels CSS Pseudoklasse :hover angezeigt (display:block).
Teil dieses Untermenüs ist ein Button, mit dem dieses dauerhaft angezeigt wird:
function MenuOn(inhalt) {
if (document.getElementById)
document.getElementById(inhalt).style.display = "block";
}
Wenn nun aber über einen zweiten Button das Untermenü wieder deaktiviert wird, funktioniert das Ausklappen mittels hover nicht mehr:
function MenuOff(inhalt) {
if (document.getElementById)
document.getElementById(inhalt).style.display = "none";
}
Gibt es dafür eine bessere Lösung, außer das Neuladen der Seite?
Innerhalb von JavaScript auf CSS Eigenschaften zuzugreifen ist mit der Nutzung des style-Attributs vergleichbar.
Ich würde in CSS 'ne Klasse „sichtbar“ mit dem Inhalt { display: block; }
definieren und diese dann dem Untermenü-Element aus dem Event-Handler heraus hinzufügen (oder wegnehmen).
Ich habe nun zwei Untermenüs. Beide sind zunächst ausgeblendet, das eine wird mittels CSS hover dynamisch eingeblendet, das andere wird mittels Javascript dauerhaft angezeigt bzw. wieder entfernt. So funktioniert es, danke!