jQuery-关闭/切换元素

亚当

我的问题是,单击活动按钮时,它不会删除其活动状态并隐藏p标签

http://jsfiddle.net/5qDY2/

 $('.section button').click(function () {
    $('.section p').hide();
    $('button').removeClass('active');

    $(this).toggleClass('active').closest('div').children('p').toggle();
 });

我确定有更好的方法可以做到这一点,但我似乎无法弄清楚

阿伦·P·约翰尼(Arun P Johny)

问题是您p隐藏了所有元素,然后在当前p元素上调用toggle,它将以任何方式显示它,因此您的toggle命令将被视为不起作用

按钮添加/删除类也一样

var $ps = $('.section p');
var $buttons = $('.section button').click(function () {
    $buttons.not(this).removeClass('active');
    var $target = $(this).toggleClass('active').closest('div').children('p').toggle();
    $ps.not($target).hide();
});

演示:小提琴

您需要从质量removeClass()/hide()操作中忽略当前的button / p元素

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章