Stabilo: Wieso verschwindet das Menu nicht bei mouseOut?

Hallo allerseits,

ich habe eine Menu erstellt, welches beim mouseover weitere Links anzeigt. Das klappt alles ganz gut!

Aber das Menu verschwindet nicht, wenn ich mich mit der Maus  vom Menu entferne.

Stimmt was mit show und hide oder was hab ich falsch gemacht?

Wäre superfroh, wenn das Problem behoben werden könnte.

-----------------------------------------------------------
Hier der Quelletext:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Navigation mit einfachem JavaScript Menu</TITLE>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<STYLE type=text/css>A {
COLOR: black; FONT: 8pt Arial; TEXT-DECORATION: none
}
A:hover {
COLOR: #ff3399; TEXT-DECORATION: underline
}
A.plain:hover {
COLOR: lime; FONT-SIZE: 8pt; TEXT-DECORATION: none
}
A:visited {
COLOR: grey
}
#box {
POSITION: absolute; VISIBILITY: hidden; layer-background-color: white
}
#gbox {
BACKGROUND-COLOR: white
}
#mnubar {
FONT: bold 8pt arial
}
</STYLE>

<SCRIPT language=JavaScript>
ns=window.navigator.appName == "Netscape"
ie=window.navigator.appName == "Microsoft Internet Explorer"

function openIt(x) {
if(ns) {
   showbox= document.layers[x+1]
     showbox.visibility = "show";
  showbox.top=5
     showbox.left=100;
  
    var items = 1      ;
     for (i=1; i<items; i++) {
      elopen=document.layers[i]
   if (i != (x + 1)) {
     elopen.visibility = "hide" }
  }
  }

if(ie) {
   curEl = event.toElement
   curEl.style.background = "white"

showBox = document.all.box[x];
     showBox.style.visibility = "visible";
   showBox.style.top = 3
  showBox.style.left = 100;
    
   var items = 1 ;
    for (i=0; i<items; i++) {
      elOpen=document.all.box[i]
  barEl=document.all.mnubar[i]
   if (i != x){
     elOpen.style.visibility = "hidden"
     barEl.style.background = "white"
  }
     }
   }
}

function closeIt() {
   var items = 1 ;
     for (i=0; i<items; i++) {
  if(ie){
   document.all.box[i].style.visibility = "hidden"
     barEl=document.all.mnubar[i]
      barEl.style.background = "green"
  }
  if(ns){ document.layers[i+1].visibility = "hide"}    
}
}

</SCRIPT>

</HEAD>
<BODY bgColor=white leftMargin=0 topMargin=0 vLink=navy marginheight="0" marginwidth="0">
  <TABLE bgColor=white border=0 cellPadding=0 height=1 id=mainmenu width="100%">
   <TBODY>
     <TR>
       <TD align=middle noWrap width=54>
    <A href="startseite.asp" id=mnubar onmouseover=openIt(0)>Linkempfehlung</A>
    </TD>
      </TR>
   </TBODY>
  </TABLE>
  <FONT color=white face=Arial size=3>
  <DIV onmouseover=closeIt()>
  <LAYER onmouseover=closeIt()></LAYER></DIV>
  <!-- Menu Bar Item 1 -->
  <FONT size=8><DIV id=box style="LEFT: 2px">
  <TABLE border=0 id=gbox cellspacing="0" cellpadding="0">
    <TBODY>
     <TR>
       <TD><A href="http://www.toiag-telefonbuch.de/NSAPI/Anfrage"
         target=body>Telefonauskunft</A>
    </TD>
    </tr>
   <tr>
       <TD><A href="http://bahn.hafas.de/bin/query.exe/dn"
         target=body>Bahnfahrplan</A>
    </TD>
   </TR>
   <TR>
       <TD><A href="http://www.unileoben.ac.at/~hlfbruck/sch/lage.htm" target=body>Lage
         und Daten</A>
    </TD>
   </tr>
   <tr>
    <TD><A href="http://www.donnerwetter.de/region"
         target=body>Wetter</A>
    </TD>
   </TR>
     <TR>
       <TD><A href="http://www.falk-online.de/"
         target=body>Routenplaner</A>
    </TD>
     </TR>
     <TR>
       <TD><A href="http://www.verkehrslage.de/cgi-bin/vklp.cgi"
         target=body>Verkehrslage</A>
    </TD>
     </TR>
     <TR>
       <TD><A href="http://www.langenscheidt.aol.de/"
         target=body>Fremwörterbuch</A>
    </TD>
   </TR>
  </TBODY>
  </TABLE></DIV>
   <DIV id=box style="LEFT: 378px"></DIV>
   </FONT>
</BODY>
</HTML>
---------------------------------------------------------------

Danke & schönen Abend noch,
Stabilo

  1. hi!

    Bei Deinem Programm ist es so, dass wenn es den Layer berührt, dass das Menu dann verschwindet. Dazu sollte der Layer unter dem Menu noch hervorschauen, ist bei DIr eben nicht der Fall. Gib Deinem Layer eine fixe Höhe an, und zwar so, dass er unter dem Menu hervorschaut. Gib einfach kurz eine andere Farbe, um es auszutesten.

    Gruß, Jan

    1. hi!

      Bei Deinem Programm ist es so, dass wenn es den Layer berührt, dass das Menu dann verschwindet. Dazu sollte der Layer unter dem Menu noch hervorschauen, ist bei DIr eben nicht der Fall. Gib Deinem Layer eine fixe Höhe an, und zwar so, dass er unter dem Menu hervorschaut. Gib einfach kurz eine andere Farbe, um es auszutesten.

      Gruß, Jan

      Hallo und danke für den Hinweis,
      aber der IE kann doch keine Layer height und width oder?

      Gibt es denn nicht noch ein anderes Skript das diesen Menueffekt beherrscht?

      ci@o

      Stabilo

      1. Hi Stabilo!

        Hab grad in meinem Script nachgeschaut, da ich auch mal so einen Fehler hatte. Hab es nicht mit Height und Width gelöst, sondern einfach ein paar <br> eingefügt.

        Gruß, Jan

        1. Hi Stabilo!

          Hab grad in meinem Script nachgeschaut, da ich auch mal so einen Fehler hatte. Hab es nicht mit Height und Width gelöst, sondern einfach ein paar

          »»  eingefügt.

          Gruß, Jan

          <br> klappt bei mir nicht, oder ich setz die an die falsche Stelle.
          Im div Tag, oder wo?

          Danke,

          Stabilo

          1. Hallo,

            vorsichtige Anmerkung von mir: auch ich habe mit fertigen Scripten angefangen, wenn aber was nicht klapt, wäre "ein Verstehen" ganz gut. (Oder ein anderes Forum....)

            Zu Deinen Fragen: ja, IE kann keine Layer, deswegen diese "Div-Layer" verschachtelung, damit beide Browser glücklich sind.

            Es geht darum, das dieser Div (Layer-) Bereich (siehe SELFHTML) größer als das dadrüberliegende Menü sein muß.... wie ein T-Shirt, daß unterm Pullover rausschaut.... und wie schaft man das? Man zieht das T-Shirt lang....

            Benutze einfach keine fertige Scripts oder versuche sie (Stückweise) zu verstehen, weiteres findest Du auch in dieser Dokumentation namens SELFHTML....

            Chräcker

            <img src="http://homepages.compuserve.de/ackheller/stempel/grafiken/logo.gif" alt="">http://www.chraecker.de/stempel

          2. Hi Stabilo!

            Einfach zwischen <layer> und </layer>. Ins <layer> musst Du einfach mit onmouseover die Funktion aufrufen, die das Menu schließt, aber das hast glaub eh schon.
            Hier die URL, wo mein Menu ist: http://www.bits.co.at//webtrader

            Gruß, Jan