1

这是我的html

<div id="1" class="category_group">
<ul class="top_level_category">
    <li><a>top level title 1</a>
        <ul class="sub_level_category">
            <li>lower level links</li>
            <li>lower level links</li>
            <li>lower level links</li>
            <li>lower level links</li>
        </ul>
    </li>
</ul>

<div id="2" class="category_group">
<ul class="top_level_category">
    <li><a>top level title 2</a>
        <ul class="sub_level_category">
            <li>lower level links</li>
            <li>lower level links</li>
            <li>lower level links</li>
            <li>lower level links</li>
        </ul>
    </li>
</ul>

这将是我的 jquery

$('div ul li ul').hide();
$('div ul li a').click(function() {
$(this).find('ul').show();
});

我正在制作手风琴但做不到,列表结构与正常的不同

样本

4

2 回答 2

1

find()搜索选定元素的指定后代元素,您可以使用next方法:

$('div ul li a').click(function(e) {
    e.preventDefault();
    $(this).next('ul').toggle();
});

http://jsfiddle.net/6rXp2/

于 2012-10-12T09:52:04.913 回答
0

Change $(this).find('ul').show(); with $(this).parent().find('ul').show(); or $(this).next('ul').show();

于 2012-10-12T09:51:11.563 回答