2013-08-04 136 views
0

我需要的点击跨度父李再秀李如何为父母的孩子ul?

<ul id="menu"> 
    <div> 
    <li class="reveal"> 
     <a href="##">!!!!!!!!!!!!</a> 
     <span class="arrow_open">↓</span><br/> <!-- clicking this one --> 
     <ul> <!-- display this one --> 
     <li>a</li> 
     <li>b</li> 
     <li>c</li> 
     </ul> 
    </li> 
    </div> 
</ul> 

而且我的代码的孩子UL认证。

$(function() { 
    $(this).parent("li").child("ul").slideToggle(); 
}); 
+1

这看起来像它应该工作。有什么问题? – 2013-08-04 16:22:20

+0

'ul'内的'div'是无效的标记。 –

回答

2

必须设置上跨度click处理,像这样

$(function() { 
    $('#menu .reveal span').on('click', function(){ 
     $(this).parent().find("ul").slideToggle(); 
    }); 
}); 
2

在你准备功能将这个:

$(".reveal span").click(function() { 
    $(this).parent("li").children("ul").slideToggle(); 
}); 

这里有一个小提琴:http://jsfiddle.net/jeffman/BWJzJ/试试吧。

0

这应该是更快地使用此代码,但你必须设置你的子菜单只是你的链接后(如在你的例子):

$(function() { 
    $('#menu .reveal .arrow_open').on('click', function(){ 
     $(this).next().slideToggle(); 
    }); 
});