简单的手风琴与jquery?

时间:2013-11-05 17:31:51

标签: javascript jquery

这是我的jquery

$(document).on('click', '.lists', function() {
    $(this).find('hide-me').attr('hide', 'show');
    console.log('test');
});

如何更改类隐藏我以显示我

<div class="lists">
    <h5 class="head">header</h5>
    <ul class="list hide">
    <li>test</li>
    <li>test</li>
    <li>test</li>
    </ul>
</div>

我尝试了上面的jquery,但我什么也没做。我需要rename the class。错误在哪里?

2 个答案:

答案 0 :(得分:0)

试试这个:

$(document).on('click', '.lists', function() {
    $(this).find('.hide').addClass('show').removeClass('hide')
});

如果我理解你的意图你可能想要切换隐藏和显示,那么你应该能够这样做:

$(document).on('click', '.lists', function() {
    $(this).parent().find(".lists ul").removeClass("show").addClass("hide");
    $(this).find('.hide, .show').toggleClass('show hide');
});

编辑:我更新了一些类与你的html相同。请参阅此处的工作小提琴:http://jsfiddle.net/rrAhX/6/

答案 1 :(得分:0)

如果您有理由不能使用 isherwood .slideToggle()建议(就像其他内容与课程或其他内容相关联),那么您可以使用{ {1}}:http://api.jquery.com/toggleClass/

具体来说,请更改此代码:

.toggleClass()

。 。 。对此:

$(this).find('hide-me').attr('hide', 'show');

这将相互独立地切换两个类,因此只要您从元素中的两个类中只有一个开始,它将删除该类,并添加另一个。再次单击,将重新添加第一个,并删除第二个。