0

jquery.animateメソッドを使用して開く一連のタブがあります。それらはすべて同じクラス名を持っているので、クリックしたタブのみを開くために.childrenメソッドを使用しています。

問題は、他のすべてのタブを開いたときに閉じる必要があることです。クリックしたものの子を除くすべてのタブ内部クラスをターゲットにする必要があります。

<div class="tab">
    <div class="tab-inner">
    </div>
</div>

<div class="tab">
    <div class="tab-inner">
    </div>
</div>

<div class="tab">
    <div class="tab-inner">
    </div>
</div>

$('.tab').toggle(function() {
        $(this).children('.tab-inner').animate({width: 840});
  }, function() {
        $(this).children('.tab-inner').animate({width: 60});
  });
4

2 に答える 2

3
$(this).siblings().children('.tab-inner')
于 2012-04-13T12:41:20.320 に答える
0

.tab-inner最初にすべての要素をアニメーション化できます。

$('.tab').toggle(function() {
    $('.tab-inner').animate({ width : 60 });
    $(this).children('.tab-inner').animate({ width : 840 });
}, function() {
    $(this).children('.tab-inner').animate({ width : 60 });
});
于 2012-04-13T12:41:39.340 に答える