記事の内容やaishipシリーズに関するお問い合わせはこちらから

0120-173-163 お電話

[電話受付時間]平日9:30〜19:00

TOP

CATEGORY

SERVICE

【jQuery】切替可能なレスポンシブ対応のタブメニューを作ってみる

【jQuery】切替可能なレスポンシブ対応のタブメニューを作ってみる

タブメニューを作ってみよう

みなさんこんにちは。開発部の本田です。

今回は、jQueryを使って簡単に切替できるレスポンシブ対応のタブメニューを実装していきたいと思います。
最近では様々な用途のサイトで導入されており、ECサイトで利用されることも多々あります。

オシャレで見やすいサイトを実現できるので是非試してみてください。

タブメニューとは、タブをクリックするとページスクロールすることなく、事前に設定したエリアに格納されたコンテンツが表示され、タブの切替によってコンテンツの中身も切り替わるメニューのことです。

「表示させたいコンテンツは多んだけど、ページをスクロールさせたくない」という時に有効なメニューだと思います。

実際にこちらのデモサイトを見てください!見たことあると思います。(もちろんレスポンシブなのでスマートフォンでも動きます)

ということで以下早速実装していきます。

ステップ1:HTMLの実装

まずはHTMLです。ECサイトの商品ページで使えそうな文言を入れています。

<ul>
    <li><a href="#tab1" class="current">color</a></li>
    <li><a href="#tab2" class="">size</a></li>
    <li><a href="#tab3" class="">Material</a></li>
    <li><a href="#tab4" class="">Country</a></li>
  </ul>
  <div id="contents">
    <div id="tab1">
      <p><strong>Blue/Red/White</strong></p>
      <p></p>
    </div>
    <div id="tab2">
      <p><strong>36・38・40</strong></p>
      <p></p>
    </div>
    <div id="tab3">
      <p><strong>cotton 100%</strong></p>
      <p></p>
    </div>
    <div id="tab4">
      <p><strong>Japan</strong></p>
      <p></p>
    </div>
  </div>

ステップ2:CSSの実装

次にCSSです。

body{
	font-family: Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	background:#E46E6E;
}
ul li {
    float: left;
    list-style-type: none;
    width: 25%;
}

ul li a {
    font-size: 1em;
    font-weight: bold;
    color: #FFF;
    text-decoration: none;
    display: block;
    padding: 9%;
    text-align: center;
    width: 100%;
    background: #C15757;
    border: 1px solid #c15757;
    border-bottom: none;
}
ul li a:hover{
	background:#D26161;
	color:#FFF;
}

ul li a.current {
    background: white;
    color: #C15757;
}

#contents{
	clear:both;
}

#contents div {
    padding: 5%;
    background: white;
    text-align: center;
    border: 1px solid #c15757;
    border-top: none;
}

#contents p{
	margin-top:20px;
	line-height:2em;
	color:#C15757;
}

#contents strong {
    font-size: 2em;
    font-weight: bold;
    color: #c15757;
    text-decoration: underline;
}

ステップ3:jQueryの実装

最後にjQueryの実装です。コードは短いです。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> 
<script>
$(function(){
	$('#contents div[id != "tab1"]').hide();
	
	// タブをクリックすると
	$("a").click(function(){
		// 一度全てのコンテンツを非表示にする
		$("#contents div").hide();

		// 次に選択されたコンテンツを再表示する
		$($(this).attr("href")).show();
		
		// 現在のcurrentクラスを削除
		$(".current").removeClass("current");
		
		// 選択されたタブ(自分自身)にcurrentクラスを追加
		$(this).addClass("current");

		
		return false;
	});

});
</script>

最後に

コンテンツ量が多くなると、限られたエリアに全てのコンテンツを表示させることが難しくなりがちです。

そういったときに今回のタブメニューを使ってスクロールせずともコンテンツを伝えられるページを作ってみてください。せっかくの良いコンテンツも見られない、読まれないと意味がありませんので、ユーザの目に入るように工夫を重ねていきましょう。

本田

                   
クラウドECのサイト構築はaishipR-カスタマイズ可能なASP実績No.1

累計2000社以上の導入の総合通販型カートシステムで、カスタマイズ性が高く、デザインの自由度はもちろん、各種システムとの連携や機能追加等も独自のカスタマイズができるため、こだわりのある本格的な通販を月額9,800円から実現できます。 またモバイルファースト設計や月2回の無償バージョンアップなどの特徴があり、使いやすさと最新性を追求した通販サイトを構築できます。 さらに信頼性の高いサーバーを採用しており大規模アクセスにも対応できるため、これからさらに通販での売上を伸ばされたい事業者様におすすめです。
         

WEBデザインカテゴリの最新記事