2010-06-30 108 views
0

我几乎在那里,但我无法解决最后一个问题。 我想在Indexhibit页面上用jquery创建一个简单的下拉菜单。jquery下拉菜单简单的问题?

$('#menu ul li.section-title').hover(
    function() { 
    $(this).parent().children().show('fast'); 
    }, 
    function() { 
    $(this).parent().children().not(this).hide('fast'); 
    } 
); 

菜单的结构是这样的:

<ul> 
<li class="section-title">HEADER which triggers dropdown</li> 
<li>element one</li> 
<li>element two</li> 
<li>element three</li> 
</ul> 

我想要的部分标题触发悬停事件,它应该显示所有立儿童。到目前为止,这工作得很好。然而,导航不太有效,因为我不能选择一个li-child。每次将部分标题悬停时,整个ul结构再次崩溃。如果我徘徊在菜单的每个孩子身上,我必须做些什么才不会触发悬停?

我希望我不会写信给混淆。 关于亚光

回答

0

捕获UL的悬停事件,然后确保将“溢出:隐藏”样式应用于外部UL。或者

<ul><h2>section-title<h2> 
    <li>element one</li> 
    <li>element two</li> 
    <li>element three</li> 
</ul> 

#menu ul li { display:none } 

#menu ul { 
    overflow:hidden 
    position:absolute or float:left <-- Might need this 
} 

$('#menu ul').hover(
    function() { 
    $(this).children("li").show('fast'); 
    }, 
    function() { 
    $(this).children("li").hide('fast'); 
    } 
);