我只是去了解Javascript和jQuery和我不知道这一点:是否有这种较短的方式:JQuery的toggleClass家长和孩子
$(".toggle").click(function(){
$(this).parent().toggleClass("collapsed");
$(this).parent().children().toggleClass("collapsed");
$(this).parent().next(".abcContent").toggle(0);
我很高兴我得到了它要毕竟工作,但肯定这不是如何做得很好......我想切换父类(abcTitle)包括其子(即按钮)。
<div class="abcTitle">
<div class="abcButton toggle"></div>
<h4 class=toggle>Title</h4><div class="sortable"></div>
</div>
<div class="abcContent">Content</div>
感谢您的启迪!
为了澄清这里的一些相关的CSS
.abcButton {
background-image:url(minus.png);
}
.abcButton.collapsed {
background-image:url(plus.png);
}
.abcTitle {
border-top-left-radius:14px;
}
.abcTitle.collapsed {
border-bottom-left-radius:14px;
}
所以基本上在任abcButton或H4点击应该触发abcContent的同时加入类.collapsed既abcButton和abcTitle崩溃。
(顺便说一句,如果我能想出如何从点击功能排除
<div class="sortable"></div>
我可以只让abcTitle我的点击处理程序,无需单独abcButton和H4)
如果你想显示/隐藏在同级各种不同的元素,那岂不是更容易隐藏一个包含它们的容器? – polarblau 2011-01-19 19:59:07
不知道这是我想做的事情......我试图在向其他人添加类时隐藏/显示一个元素。 – Tim 2011-01-19 22:17:43