menu
menu

キーワード検索

 

前月(8月)の人気記事トップ10

  1. ( 1-) 【CSS Tips】CSSだけでドロップダウンメニュー
  2. ( 2-) 【CSS Tips】CSSだけでサイズ可変・スマホ対応のアコーディオン
  3. ( 3-) 【HTML5】スマホサイトの作成・基本編
  4. ( 4-) 【CSS Tips】CSSだけでブロック要素の表示非表示(トグルボタン)
  5. ( 5-) 【実践でjQuery入門】jQueryで日時を表示
  6. ( 7↑) 【CSS Tips】スマホサイト向け横にスクロールするナビゲーション
  7. ( 6↓) 【jQuery】表示しているブラウザの高さを取得してCSSのheightに指定
  8. ( -↑) 【Mac Tips】MacにInkscapeをインストール
  9. ( 9-) 【MySQL】Windows 10にMySQLをインストール
  10. ( 8↓) 【HTML5】HTML5・ページ作成の基本

【jQuery Tips】jQueryでツリーメニュー

  • Labs

jQuery

こんにちは(・∀・)

今回はjQueryでツリーメニューのご紹介です。以前ご紹介しましたアコーディオンメニューとjQueryはほぼ同じです。

サンプル
HTML

Google Hosted LibrariesからjQuery 1.x snippetを<head>内に読み込みます。


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

<div id="container">
<div id="content">
<p>jQueryで縦に展開するツリーメニューのサンプルです</p>
<!--content--></div>
<div class="treemenu">
<p class="lv1btn">tree btn</p>
<div class="lv1body">
<p class="lv2btn"><img src="guide.png" alt="">tree btn 2</p>
	<div class="lv2body">
	<p class="lv3btn"><img src="guide.png" alt="">tree btn 3</p>
		<div class="lv3body">
		<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
		<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
	</div>
	<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
	</div>
<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
</div>
<p class="lv1btn">tree btn</p>
<div class="lv1body">
<p class="lv2btn"><img src="guide.png" alt="">tree btn 2</p>
	<div class="lv2body">
	<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
	<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
	</div>
<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
</div>
<p class="lv1btn">tree btn</p>
<div class="lv1body">
<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
<p class="lv2btn"><img src="guide2.png" alt="">tree btn 2</p>
	<div class="lv2body">
	<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
	<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
	</div>
</div>
<p class="lv1btn">tree btn</p>
<div class="lv1body">
<p class="lv2btn"><img src="guide2.png" alt="">tree btn 2</p>
	<div class="lv2body">
	<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
	<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
	</div>
</div>
<p class="lv1btn">tree btn</p>
<div class="lv1body">
<p><img src="guide.png" alt=""><a href="#">link btn</a></p>
<p><img src="guide2.png" alt=""><a href="#">link btn</a></p>
</div>
<p class="lv1btn"><a href="#">link btn</a></p>
<!--treemenu--></div>
<!--container--></div>
CSS

* {
  box-sizing: border-box;
}
#container {
  width: 960px;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
}
#content {
  float: right;
  width: 704px;
  text-align: left;
}
#content p {
  padding: 10px 20px;
}
.treemenu {
  float: right;
  width: 256px;
  border-right: 1px solid #ccc;
}
/*階層1*/
.treemenu .lv1btn {
  cursor: pointer;
  padding: 5px 10px;
}
.treemenu .lv1body {
  display: none;
  padding: 0 10px 5px 10px;
}
.treemenu .lv1body a {
  line-height: 2.0;
}
/*階層2*/
.treemenu .lv1body .lv2btn {
  cursor: pointer;
  padding: 5px 10px 5px 0;
}
.treemenu .lv1body .lv2body {
  display: none;
  padding: 0 10px 5px 10px;
}
.treemenu .lv1body .lv2body a {
  line-height: 2.0;
}
/*階層3*/
.treemenu .lv1body .lv3btn {
  cursor: pointer;
  padding: 5px 10px 5px 0;
}
.treemenu .lv1body .lv2body .lv3body {
  display: none;
  padding: 0 10px 5px 10px;
}
.treemenu .lv1body .lv2body .lv3body a {
  line-height: 2.0;
}
JavaScript

$(function() {
$(".treemenu .lv1btn,.treemenu .lv1body .lv2btn,.treemenu .lv1body .lv2body .lv3btn").click(function() {
$(this).next().slideToggle(100);
});
});
Result

サンプルデモはこちら


関連リンク

CSSだけでサイズ可変・スマホ対応のツリーメニュー

  • カテゴリー:Labs