1

だから私はjQueryのスライディングタブコードを扱っています。別のタブが選択されたときにクラスを引き継ぐには、他のタブが必要です。これは私が書いたものです:

$(document).change(function() {
  if ($('#tab_5').hasClass('st_tab_active')) {
      $('#tab_4').addClass('st_tab_active2');
  }
  else
    {$('#tab_4').removeClass('st_tab_active2');};
} );

を使用してchangeいますが、それは私が判断できる適切なイベントではなく、どちらが正しいかわかりません。前へボタンと次へボタンをクリックすると、クラスが選択されたとき#tab_5にそのクラスが取得されます。これが発生したときに引き受けるst_tab_active必要があります。使用すべき適切なイベントは何ですか?#tab_4st_tab_active2

4

2 に答える 2

1

タブのリストが与えられた場合

<div class="tab active"></div>
<div class="tab"></div>
<div class="tab"></div>
<div class="tab"></div>

jQuery

$(".tab").click(function(){
   $(".tab").removeClass("active");
   $(this).addClass("active");
});

この例はあなたの状況を正確に再現したものではありませんが、適用可能ないくつかのポイントを示しています。まず、タブでクラスを使用します。これにより、一度にすべてのタブに簡単にアクセスできます。次に、jQuery でアクティブなクラスを追加/削除するときは、すべてのタブからクラスを削除してから、正しいタブに適用します。

次のボタンを使用するため、状況に応じたスクリプトは若干異なる場合があります。

$(".next").click(function(){
    var nextElem = $(".active").next();
    $(".tab").removeClass("active");
    nextElem.addClass("active");
});
于 2013-03-31T09:18:15.120 に答える