Andreas: Problem mit Ausblenden einer Ebene(Aufklappmenue)

Beitrag lesen

Hallo!

Ich habe ja kürzlich ein kleines Aufklappmenue(<div> Ebene eingeblendet) gebastelt. Aber durch folgende Seite bin ich wieder dazu gekommen, das nochmal etwas zu überarbeiten: http://www.phpwizard.net/ dieses dort ist wirklich gut wie ich finde. Es reicht, wenn es im IE > 5 uind NN > 6 funktioniert, also kann ich nur mit getElementById arbeiten.

Ich habe die 2 Probleme:
1. Weiß ich nicht, wie ich die Ebene wieder verschwinden lassen soll! Ich habe eine Link über den mit onMouseOver die Funktion show() ausgeführt wird.
ich mache das indem ich eine 2. Ebene dahinter einblende, und da bei onMouseOver dann hide() ausführe. Das ist aber irgendwie "unsicher", bleibt oft stehen! Wie könnte man das anders machen? Die Ebene mit dem Menu kann ich für onMouseOut nicht verwenden, da das bei jedem Buchstaben im Menue der Fall ist. Jemand ne bessere Idee?

2. Problem: IE und NN Zeigen die Ebene nicht an selber Position an. Ich habe das wie unten probiert etwas manuell zu machen(if(document.all) andere Koordinaten...), ist aber auch nicht genau und sehr unsauber. Kennt hier jemand ne andere Lösung? Ich habe das mit einer

Das Javascript:

function show() {

if(document.getElementById){

document.getElementById("menue").style.visibility = "visible";
  document.getElementById("layer").style.visibility = "visible";

document.getElementById("menue").style.left = -20;
  document.getElementById("layer").style.left = -40;

if(document.all){
  document.getElementById("menue").style.top = 20;
  document.getElementById("layer").style.top = 20;
  document.getElementById("menue").style.left = -20;
  document.getElementById("layer").style.left = -40;
  }
   else {
     document.getElementById("menue").style.top = 5;
  document.getElementById("layer").style.top = 5;
  document.getElementById("menue").style.left = -5;
  document.getElementById("layer").style.left = -15
     }
   }
}

function hide() {

if(document.getElementById){
     document.getElementById("menue").style.visibility = "hidden";
  document.getElementById("layer").style.visibility = "hidden";
  }
}

Grüße
Andreas