0
<ul id="menu2">
<li><a href="/term/6">close/show</a>
<ul class="haschild">
<li><a href="/term/14">test 1 2</a></li>
<li><a href="/term/13">tst 13</a></li>
</ul>
</li>
<li><a href="/term/7">helli</a></li>
</ul>

jQuery代码:

  $("ul.haschild").hide();
  $("ul.haschild").prev().click(function(){
    $(this).children('.haschild').slideToggle('slow');
    return false;
});

单击close/show时,haschild部分不会在显示或隐藏之间更改。

然后我改成$("ul.haschild").prev()$("ul.haschild").siblings()仍然无法工作。谢谢你

4

1 回答 1

2

那是因为被点击的元素没有.haschild后代元素,你可以使用next方法:

$(this).next('.haschild').slideToggle('slow');

http://jsfiddle.net/tk9j8/

请注意,您应该将代码放在文档就绪处理程序中。

于 2012-12-02T09:51:40.863 回答