Hi zusammen
Ich hab hier ein kleines Problem mit einem Hovermenü. Nachfolgend die Erläuterung dazu:
[Funktion]
Beim überfahren des Bereichs „Menu 1“ wird das Submenü davon aktiv bzw. eingeblendet (Realisiert mit Imagemap und onMouseOver). Beim verlassen des Submenüs wird dieses ausgeblendet (ausser man fährt direkt auf „Menu 2“, dies ist aber nicht zu beachten)
Das Submenü enthält eine Imagemap, die je nach Link auf eine andere Seite zeigt.
[Umsetzung]
Ich habe diverse Wege versucht dies sinnvoll zu realisieren. Schlussendlich bin ich mittels Dreamweaver auf der Lösung „hängengeblieben“, dass ich einen zweiten Layer bzw. eine Ebene „mnu1“ einblende sobald man über den Imagemap-Teil von „Menu 1“ fährt. Um den Submenü 1 Bereich herum habe ich eine zweite Ebene „mnu1border“ erstellt mit einer Aussenbreite +10px der Grösse des Submenü 1. Überfährt man diesen, wird die Ebene „mnu1“ wieder ausgeblendet. Diese Ebene liegt unterhalb der „Menu 1“ und „Submenü 1“ Ebene (desshalb auch der Effekt, dass beim direkten fahren auf „Menu 2“ nichts passiert, ist aber egal da nur Test!)
[Problem]
Wenn man das Submenü 1 mit einer raschen Mausbewegung verlässt, wird das onMouseOver des „mnu1border“ nicht getriggert. Beim langsamen verlassen ist dies kein Problem.
Ich habe schon diverse Wege versucht dies zu umgehen. Habe z.B. das ganze mittels onMouseOver und onMouseOut versucht. Das Problem dabei ist dann wiederum das ImageMap des Submenü 1, da dies für den Layer einen onMouseOut Trigger ergibt…
[Demo]
http://kosh.teraweb.ch/menu/test.htm
Der Quellcode ist nicht wirklich sauber erstellt sondern nur kurz mehr oder weniger im Dreamweaver zusammengeklickt. Ich hoffe, dass eine Analyse des Problems trotzdem möglich ist.
[Browser]
Ich habe das Problem mit den Majors (IE, NS, FF, Opera) nachvollziehen können. Es ist also kein Browser-Spezifisches sondern eher ein Mausgeschwindigkeits-Spezifisches *g* Problem.
Ich hoffe dieser Text reicht zur Erklärung und was ich beachsichte zu machen. Bin für jeden Tipp dankbar wie ich dies sinnvoll umgehen kann.
Am liebsten wäre mir eine Lösung in der ich keinen Aussenborder machen muss, sondern nur mit onMouseOver und onMouseOut arbeiten kann… Ich sehe aber irgendwie keine sinnvolle Möglichkeit dies zu realisieren.
Besten Dank für eventuelle Antworten
Chris