我正在努力實現自定義手風琴。它確實只是一個slideToggle顯示/隱藏,但我只想要一次打開一個切換開關,使用jquery添加和刪除額外樣式的類。定製jquery手風琴 - 在主播上添加/刪除類
下面的代碼大部分工作......扔我一個循環的部分是添加/刪除我的h4元素上的一個「活動」類。當有人點擊H4時,它應該接收「激活」類,並且我的塊中的所有其他h4元素將被「激活」移除。我已經試過了這麼多種方法,但我不能完全搞清楚。
這裏是我的HTML的例子...
<div class="accord-block">
<h4 class="accordLink"><a href="#">Title of box</a></h4>
<div class="accord-container">
<div class="accord-content">
<p>Lorem ipsum content dolor sit amet desu</p>
</div>
</div>
</div>
<div class="accord-block">
<h4 class="accordLink"><a href="#">Another title of another box</a></h4>
<div class="accord-container">
<div class="accord-content">
<p>Lorem ipsum content dolor sit amet desu</p>
</div>
</div>
</div>
這裏是我的jQuery ...
$(document).ready(function(){ $(".accord-container").hide(); $("h4.accordLink").click(function(){ $(".accord-block").find(".active").removeClass("active"); $(this).toggleClass("active").next().slideToggle("fast"); $(this).parent().toggleClass("activeToggle").siblings() .removeClass("activeToggle").children(".accord-container").hide("fast"); return false; }); });
任何見解將是非常美妙。我要走這條路,因爲我需要「協議塊」來接收一組CSS和ID,並且當我覺得這個解決方案是最好的時候,我不想使用Jquery UI。
謝謝!
編輯補充:我忘了描述我遇到的問題!使用上面的代碼,當你點擊一個h4.accordLink「打開」然後「關閉」時,jquery不會刪除「active」類。當你在協議塊之間單擊時,它的工作效果很好,但不能打開和關閉單個塊。
看起來工作得很好,究竟是什麼問題你看到了嗎? – 2011-06-15 20:20:47
我會第二 - http://jsfiddle.net/75Et5/1/ – Jon 2011-06-15 20:29:24