在secrtion上添加/删除类使用jQuery折叠/展开
我有以下逻辑来展开/折叠问答部分。我试图在“a”中添加一个类,以指示折叠/扩展状态。我想我把事情搞得太复杂了,但它不起作用在secrtion上添加/删除类使用jQuery折叠/展开,jquery,Jquery,我有以下逻辑来展开/折叠问答部分。我试图在“a”中添加一个类,以指示折叠/扩展状态。我想我把事情搞得太复杂了,但它不起作用 $(".A").hide(); $(".Q").click(function() { $(".A:visible").slideUp("slow"); $(this).next(".A:hidden").slideDown("slow"); // part below does not work !!! $(this).each(functi
$(".A").hide();
$(".Q").click(function() {
$(".A:visible").slideUp("slow");
$(this).next(".A:hidden").slideDown("slow");
// part below does not work !!!
$(this).each(function(){
if ($(this).is(":visible")) {
$(this).find("span").removeClass("collapsed").addClass("expanded");
} else {
$(this).find("span").removeClass("expanded").addClass("collapsed");
}
});
});
<div class="Q"><span class="collapsed"></span>aaaa</div>
<div class="A">bbbb</div>
<div class="Q"><span class="collapsed"></span>cccc</div>
<div class="A">dddd</div>
$(“.A”).hide();
$(“.Q”)。单击(函数(){
$(“.A:可见”).slideUp(“慢速”);
$(this.next(.A:hidden”).slideDown(“slow”);
//下面的部分不起作用!!!
$(this).each(function(){
如果($(this).is(“:可见”)){
$(this).find(“span”).removeClass(“折叠”).addClass(“扩展”);
}否则{
$(this).find(“span”).removeClass(“扩展”).addClass(“折叠”);
}
});
});
aaaa
bbbb
中交
dddd
为什么不编辑您的帐户来计算这个额外的要求?我觉得这是一个单独的问题,尽管它与之前的。。。我不确定将其他问题混入原始问题中是否是个好主意,因为它已成功解决。你在寻找什么吗?这正是我要寻找的。你能把它作为答案贴出来,这样我就可以接受了。谢谢
$(".A").hide();
$(".Q").click(function() {
var that = this;
$(".A:visible").slideUp("slow");
$(".Q span.expanded")
.removeClass('expanded')
.addClass('collapsed');
$(this)
.next(".A:hidden")
.slideDown("slow", function(){
$('span.collapsed', that)
.removeClass('collapsed')
.addClass('expanded');
});
});