垂直摺疊導航選單實現詳解
純CSS實現此效果可以參閱CSS3垂直摺疊導航選單一章節。
本章節分享一個結合JavaScript實現的垂直摺疊導航選單效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> body{ margin:0; padding:0 0 12px 0; font-size:12px; line-height:22px; font-family:"\5b8b\4f53", "Arial Narrow"; background:#fff; } form, ul, li, p, h1, h2, h3, h4, h5, h6{ margin:0; padding:0; } input, select{ font-size:12px; line-height:16px; } img{border:0;} ul, li{list-style-type:none;} a{ color:#00007F; text-decoration:none; } a:hover{ color:#bd0a01; text-decoration:underline; } .box{ width:150px; margin:0 auto; } .menu{ overflow:hidden; border-color:#C4D5DF; border-style:solid; border-width:0 1px 1px; } .menu li.level1 a{ display:block; height:28px; line-height:28px; background:#EBF3F8; font-weight:700; color:#5893B7; text-indent:14px; border-top:1px solid #C4D5DF; } .menu li.level1 a:hover{ text-decoration:none; } .menu li.level1 a.current{ background:#B1D7EF; } .menu li ul{ overflow:hidden; } .menu li ul.level2{ display:none; } .menu li ul.level2 li a{ display:block; height:28px; line-height:28px; background:#ffffff; font-weight:400; color:#42556B; text-indent:18px; border-top:0px solid #ffffff; overflow:hidden; } .menu li ul.level2 li a:hover { color:#f60; } </style> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".level1 > a").click(function(){ $(this).addClass("current") .next().show() .parent().siblings().children("a").removeClass("current") .next().hide(); return false; }); }); </script> </head> <body> <div class="box"> <ul class="menu"> <li class="level1"> <a href="#none">前端專區</a> <ul class="level2"> <li><a href="#none">html教程</a></li> <li><a href="#none" >css教程</a></li> <li><a href="#none" >div教程</a></li> <li><a href="#none" >jquery教程</a></li> </ul> </li> <li class="level1"> <a href="#none">資源專區</a> <ul class="level2"> <li><a href="#none">特效下載</a></li> <li><a href="#none">電腦特效</a></li> <li><a href="#none">手機特效</a></li> <li><a href="#none">圖片下載</a></li> </ul> </li> <li class="level1"> <a href="#none">螞蟻部落</a> <ul class="level2"> <li><a href="#none">前端專區</a></li> <li><a href="#none">特效專區</a></li> <li><a href="#none">站長交流</a></li> <li><a href="#none">管理專區</a></li> </ul> </li> </ul> </div> </body> </html>
上面的程式碼實現了垂直導航選單效果,下面介紹一下它的實現過程。
一.實現過程:
<div class="box"></div>最外層的box元素能夠將整個導航欄實現了水平居中效果,css程式碼如下:
[CSS] 純文字檢視 複製程式碼.box{ width:150px; margin:0 auto; }
摺疊選單的結構佈局:
[HTML] 純文字檢視 複製程式碼<li class="level1"> <a href="#none">前端專區</a> <ul class="level2"> <li><a href="#none">html教程</a></li> <li><a href="#none" >css教程</a></li> <li><a href="#none" >div教程</a></li> <li><a href="#none" >jquery教程</a></li> </ul> </li>
上面的程式碼是摺疊選單的結構,作為主導航的連結a被使用display:block設定為塊級元素,這樣就可以設定它的尺寸,同時在預設狀態下,作為二級選單的ul元素是隱藏的,也就是說二級選單是摺疊的。
二.程式碼註釋:
[JavaScript] 純文字檢視 複製程式碼$(document).ready(function(){ // code })
當文件結構完全載入完畢再去執行函式中的程式碼。
[JavaScript] 純文字檢視 複製程式碼$(".level1 > a").click(function(){ // code })
為class屬性值為level1元素下的一級a元素註冊click事件處理函式。
[JavaScript] 純文字檢視 複製程式碼$(this).addClass("current").next() .show() .parent() .siblings() .children("a") .removeClass("current") .next() .hide()
鏈式呼叫效果,實現點選主導航連結實現當前點選主導航後面的二級選單展開,其他選單摺疊效果。
[JavaScript] 純文字檢視 複製程式碼return false
取消主導航連結的跳轉效果。
相關文章
- CSS3垂直摺疊導航選單CSSS3
- JavaScript下拉摺疊導航選單講解JavaScript
- JavaScript可摺疊屬性導航選單JavaScript
- CSS垂直導航選單CSS
- 點選平滑下拉展開摺疊樹形導航選單
- 中英文切換導航選單實現詳解
- CSS垂直三級導航選單CSS
- jquery 實現的摺疊展開的選單jQuery
- jQuery三級導航選單詳解jQuery
- jQuery和css3垂直手風琴摺疊選單外掛jQueryCSSS3
- CSS三級下拉導航選單詳解CSS
- CSS水平導航選單製作詳解CSS
- CSS 水平導航選單製作詳解CSS
- vue使用element元件實現選單的摺疊與展開Vue元件
- 二級下拉導航選單製作詳解
- 微信小程式實現多摺疊展開酷炫選單微信小程式
- Axure 教程:製作摺疊選單
- vxe-form table 實現摺疊表單ORM
- HTML6實現摺疊選單與手風琴選單的例項程式碼HTML
- PbootCMS導航選單-導航選單的使用教程boot
- jQuery 動畫方式展開或者收縮垂直導航選單jQuery動畫
- adminLTE 點選左側選單導航連結跳轉整個頁面會重新整理,左側的選單又會摺疊起來,如何不擇疊?
- JavaScript實現HTML導航欄下拉選單[懸浮顯示]JavaScriptHTML
- layui垂直導航用法大全UI
- BootstrapBlazor實戰 Menu 導航選單使用(2)bootBlazor
- BootstrapBlazor實戰 Menu 導航選單使用(1)bootBlazor
- 直播平臺原始碼,可摺疊式選單欄原始碼
- JavaScript二級導航選單JavaScript
- CSS 動態導航選單CSS
- 導航選單(動畫)--- jQuery動畫jQuery
- JavaScript 三級導航選單JavaScript
- Flutter 底部導航詳解Flutter
- CSS導航欄及下拉選單CSS
- CSS多級導航選單效果CSS
- Element-ui之導航選單UI
- JavaScript slide下拉導航選單效果JavaScriptIDE
- 實現一個可無限摺疊的table
- 摺疊皮膚元件的設計與實現元件