Andreas: If-Abfrage klappt nicht

Beitrag lesen

Hallo

Deinen Versuchen, das Problem darzulegen entnehme ich, daß du ein Menü hast, welches aus Layern besteht.

Das erste menü wird per DB und CSS ausgelesen

Du willst nun augenscheinlich einige Menüpunkte anzeigen, während andere versteckt sein sollen - und das gleich wenn die Seite geladen wird.

Die weiteren SUB-MENÜ sind Layer die versteckt sind und durch MouseOver wie angegeben Sichtbar werden.

Funktioniert aber nicht mit dem Code, den du da ausgibst. Die Funktion MM_Showhidelayers() ist dazu da, auf Klick oder Mouseover einen Layer einzublenden oder zu verstecken. Wenn der Layer von Beginn an unsichtbar sein soll, mußt du das mit CSS lösen, ersatzweise auch onload mit Javascript.

Es funzt durch MouseOver nicht durch ein Klick wenn ich bei der IF-Abfrage mich nur auf eine menuid beschränke.

if($menuid == 2)
{
//----- Sichtbar -----
echo "<a href="#" onMouseOver="MM_showHideLayers('Layer2','','show')">".$menu."</a>";
}
else
{
//----- nicht Sichtbar -----
echo "<a href="#" onMouseOver="MM_showHideLayers('Layer2','','hide')">".$menu."</a>";
}

So wie ich auch die anderen menuid abfragen will geht es nicht mehr
wie schon geschildert

Das nur als kleinen Hinweis. Im übrigen sieht dein Code sehr umständlich aus. Die Empfehlung, einfach die Menü-ID aus der Datenbank ohne IFs in den Link zu schreiben erscheint mir durchaus nachdenkens- und umsetzungswert.

Wenn das mit dem Problem gelöst ist dann komme ich auch darauf zurück, danke, aber nach dem viel hin und her ist dies für mich zum Verstehen das einfachste

Danke
Andreas