Javascript 与jquery的简单一致?

Javascript 与jquery的简单一致?,javascript,jquery,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 hid

这是我的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,但什么也没做。我需要
重命名该类
。哪里出错了?

试试这个:

$(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中的相同。请参见此处的工作小提琴:

如果有原因您不能使用isherwood的
.slideToggle()
建议(就像其他东西与类或其他东西绑定一样),那么您可以使用
.toggleClass()

具体针对您的代码,请更改以下内容:

$(this).find('hide-me').attr('hide', 'show');
。为此:

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

这将相互独立地切换这两个类,因此只要在元素上只使用这两个类中的一个,它就会删除这一个,然后添加另一个。再次单击,第一个将被重新添加,第二个将被删除。

jQuery UI是您的选项吗?你所理解的是对的。但是第二段代码不是切换类