我只是去了解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