Heizer: Div flackert bei onmouseover

Liebes Forum

Ich habe ein Menü geschrieben, das beim überfahren mit der Maus "aufklappt" und eine reihe untermenüpunkte anzeigt. Das Problem ist, daß es im Mozilla "flackert", soll heißen, wenn man die Maus über das <div> des Untermenüs bewegt, dann verschwindet es immer wieder kurz. Ich habe es schon mit einem zeitverzögerten ausblenden versucht, aber dann verschwindet es ganz, wenn es sonst nur flackern würde. Ich poste mal relevante Teile des Quellcodes:

// Diese Javascript-Funktion steuert (ganz einfach) das ein und ausblenden
function submenu(vis) {
 if (document.getElementById) {
  if (vis == "visible") {
      document.getElementById('submenu').style.visibility = 'visible';
  }
  if (vis == "hidden") {
   document.getElementById('submenu').style.visibility = 'hidden';
  }
 }
}

<!-- Dies ist ein Hauptmenüpunkt -->
<div class='menuitem'><img src='../images/menu/admin.gif' width="107" height="63" alt='admin' title='Administration' border='0' style="position:relative; left:7px;" />

<!-- Hier ist der "sensitive" Teil, der die JS Funktion zuerst aufruft -->
<img src='../images/menu/active.gif' width='34' height='39' alt='aktiv' title='' border='0' id='activeTri' onmouseover="submenu('visible');";  onmouseout="submenu('hidden');" />

</div><!-- Menüpunkt zuende -->

<!-- Dies ist ein (zusammengekürztes) Untermenü. Wenn das menü so kurz ist, dann flackert es eigentlich nicht, aber je länger das Menü (größer das div) um so mehr flackert es. -->
<div id='submenu' style="top:43px;" onmouseover="submenu('visible');";  onmouseout="submenu('hidden');"><b>Home</b><br />• <a href='home.php?todo=neu_begrüßung'>Neue Begrüßung</a><br /></div>

So, weiß hier jemand rat? Ich bin leider in JS nicht so bewandert, und habe echt keine Idee, wie ich das lösen könnte. Ach, und an alle, die meinen, ein Menü mit javascript sei nicht geeignet, weil man das ja abschalten könne, denen sei gesagt, daß dann natürlich ein anderes Menü angezeigt wird.

Danke

Heizer