2012-04-04 7 views
0

を隠して - 私が行うことができるようにしたいどのようなhttp://jsfiddle.net/nJpNb/2/カスタムjQueryのアコーディオンと私はカスタムのアコーディオンのスクリプト持って次のdiv

は$(「もっと」)がクリックされたときに、前/次のdivを非表示にしています。現在、すべてのパネルは開いたままであるため、スクリプトはほとんどの場合動作します。

ここで任意の助けいただければ幸いです。

おかげ

答えて

0

ちょうど$(".more").click(function() {

DEMOの最初の行に

$(".newsBody").hide(); 
$('.newsTeaser').show(); 

を追加します。http://jsfiddle.net/nJpNb/5/

しかし、項目をキャッシュしてください。以下のようなあなたの.moreクリック内側の2行下に追加

+0

優れています。 – webworker

+0

自由に答えを受け入れることができます。 – binarious

0

てみてください、

//hide all others and show newsTeaser 
$newsItem.find('.newsBody').hide(); 
$newsItem.find('.newsTeaser').show(); 

DEMO

完全なコード:各セクションへのidを設定し

$(".newsBody").hide(); 
var $newsItem = $('.newsItem'); 
$(".more").click(function() { 

    //hide all others and show newsTeaser 
    $newsItem.find('.newsBody').hide(); 
    $newsItem.find('.newsTeaser').show(); 

    var $parent = $(this).parent(); 
    $parent.hide(); 
    $parent.parent().find(".newsBody").show(); 
}); 
$(".less").click(function() { 
    var $parent = $(this).parent(); 
    $parent.hide(); 
    $parent.parent().find(".newsTeaser").show(); 

}); 
+0

ありがとう、このソリューションも動作します.. – webworker

0

(彼らが持っているので、クラスとID)。次に誰かがセクション2を選択すると自動的にセクション1と3を非表示にします

関連する問題