memorandum

備忘録

2018.10.12

jQueryでタブ切り替えを設置(複数設置も対応)

プラグインを使用せず、jQueryでタブ切り替えを設置する場合は以下のようにすれば簡単に設置が可能。

【HTML】

<ul class="tabMenu">
  <li class="active">タブメニュー</li>
  <li>タブメニュー</li>
  <li>タブメニュー</li>
</ul>
<div class="tabContent active">
  <p>ここにコンテンツ</p>
</div>
<div class="tabContent">
  <p>ここにコンテンツ</p>
</div>
<div class="tabContent">
  <p>ここにコンテンツ</p>
</div>

【jQuery】

$(function () {
  $('.tabMenu li').click(function () {
    var num = $('.tabMenu li').index(this);
    $('.tabContent').removeClass('active');
    $('.tabContent').eq(num).addClass('active');
    $('.tabMenu li').removeClass('active');
    $(this).addClass('active');
  });
});

1ページに複数設置する場合

たまに1ページに複数設置したい場合があるが、上記の記述ではすべてのタブ切り替えが反応してしまうので、別のコードで対応する必要がある。

【jQuery】

$(function () {
  $('.tabMenu li').click(function () {
    var num = $('.tabMenu li').index(this);
    $(this).addClass('active').siblings('li').removeClass('active');
    $(this).closest('.tabMenu').siblings('.tabContent').removeClass('active');
    $('.tabContent').eq(num).addClass('active');
  });
});

あとはCSSで表示・非表示の設定をすればOK!

MAIL制作・お見積りのご依頼
ご相談・お問い合わせ