2009-07-18 13 views
0

Ich bin mir nicht sicher, ob ich das richtig mache, aber ich versuche, ein einfaches Dropdown-Menü in jQuery zu erstellen. Ich mag im Grunde ein div (mit Links) erscheinen, sobald der Menüpunkt schwebt über wird ..Versuch, ein schnelles jQuery Dropdown-Menü zu erstellen

Das Menü:

<ul id="mainlevel"> 
    <li><a href="#" class="mainlevel_home" ><span>Home</span></a></li> 
    <li><a href="#" class="mainlevel_feature-writers" ><span>Feature Writers</span></a></li> 
    <li><a href="#" class="mainlevel_fantasy-killed-my-hsc" ><span>Fantasy Killed My HSC</span></a></li> 
</ul> 

The Hidden Div:

<div class="subMenu"><a href="/feature-writers/jd-ormsby" class="sublevel jd-ormsby"><span>J.D. Ormsby</span></a></div> 

Die jQuery:

$(".mainlevel_feature-writers").hover(function(){ 
    $(".subMenu").fadeIn("slow"); 
}, function() { 
    $(".subMenu").fadeOut("slow"); 
}); 

Jetzt blendet es das versteckte div ein und blendet es aus, aber - wie verhindere ich das Ausblenden, wenn jemand auf etwas in dem neu gezeigten div schwebt?

Sorry, wenn das eine wirklich offensichtliche Frage ist .. Ich lerne immer noch! :)

+0

Ein Menü ist nicht eine triviale Sache, gut zu machen, richtig zu tun und Cross-Browser. Ich würde vorschlagen, dass Sie superfish() oder ein anderes jQuery- oder CSS-Menü verwenden. – cletus

+0

Ich habe versucht, die Joomla Superfish-Komponente, aber ich hatte Probleme mit dem Styling der einzelnen Menüs (jeder Menüpunkt hat ein bestimmtes Bild) .. so verwende ich die Joomla ext. menu aber die drop-downs spielen, henne ich versuche, es selbst zu schreiben :) – SoulieBaby

Antwort

1

Ich denke, Sie müssen die Behandlung von mouseover und mouseout Ereignisse trennen.

Vermutlich möchten Sie, dass der Handler mouseover an das Menüelement "oberste Ebene" angehängt wird und der Handler mouseout an das ausgeblendete drop "Dropdown" angehängt wird (mit einigen Statuscodes zum Verwalten von Konflikten).

+0

ja .. im Grunde das einzige Element, das das versteckte div angezeigt wird .mainlevel_feature-writers, die mehrere Links drin haben, will ich nur die Fadeout, um zu warten, wenn der Cursor innerhalb der versteckten Div ist. Wenn das Sinn macht :) – SoulieBaby