2013-10-11 40 views
0

我有一个菜单结构,其中子菜单呈现为这样显示嵌套列表上徘徊在父列表

<nav> 
<ul> 
<li class="itm">A 
    <ul> 
     <li>One</li> 
     <li>Two 
      <ul> 
       <li>Menu Item</li> 
       <li> Menu Item </li> 
       <li> Menu Item </li> 
      </ul> 
     </li> 
     <li> Three </li> 
     <li> Four </li> 
    </ul> 
</li> 

<li class="icon"><span class="img"></span></li> 
<li class="itm">B</li> 
<li class="itm">C</li> 
</ul> 
</nav> 

Nowi嵌套的列表要显示的子菜单(子表),当光标悬停在父li并为我这样做:

$('nav ul li').hover(function() { 
    console.log(this); 
    $(this > ul).fadeIn(); 
}, function() { 
    $(this > ul).fadeOut(); 
}); 

但在悬停它显示这个错误在JS控制台:Uncaught ReferenceError: ul is not defined

+0

你没有任何特别的原因使用CSS,代替jQuery的? –

回答

2

你的选择是结合this,这是一个文字,和什么应该是一个选择器中的字符串(> ul)。 ul正在被视为变量,并且ul变量不存在。

试试这个:

http://jsfiddle.net/cyzsw/

$(this).children('ul').fadeIn();