jquery-vertical-navigation是一款简单实用的jQuery左侧固定侧边栏插件。它可以制作多级子菜单,使用Font Awesome作为默认图标,通过简单的设置就可以生成一个漂亮的固定侧边栏菜单。
使用方法
使用该侧边栏插件需要引入jQuery,jquery.ssd-vertical-navigation.min.js文件
<script src="js/jquery.min.js"></script> <script src="js/jquery.ssd-vertical-navigation.min.js"></script>
HTML结构
该侧边栏菜单使用嵌套的无序列表作为菜单项和子菜单项。在菜单的外围,div.contentLeft
是侧边栏的包裹容器。div.contentRight
是正文内容。
<div id="contentWrapper"> <div id="contentLeft"> <ul id="leftNavigation"> <li class="active"> <a href="#"><i class="fa fa-coffee leftNavIcon"></i> <a href="#">Menu</a> 1 </a> <ul> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 1.1 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 1.2 </a> </li> </ul> </li> <li> <a href="#"><i class="fa fa-flask leftNavIcon"></i> Menu 2 </a> <ul> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 2.1 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 2.2 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 2.3 </a> </li> </ul> </li> <li> <a href="#"><i class="fa fa-truck leftNavIcon"></i> Menu 3</a> <ul> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 3.1 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 3.2 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 3.3 </a> </li> </ul> </li> <li> <a href="#"><i class="fa fa-envelope-o leftNavIcon"></i> Menu 4 </a> <ul> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 4.1 </a> </li> <li> <a href="#"><i class="fa fa-angle-right leftNavIcon"></i> Menu 4.2 </a> </li> </ul> </li> </ul> </div> <div id="contentRight"> Your main content goes here </div> </div>
CSS样式
为该侧边栏菜单添加下面的基本CSS样式。要做得更漂亮,你可以自定义这些样式。
#contentWrapper { width: 100%; height: 100%; position: relative; } #contentLeft { z-index: 10; width: 250px; height: 100%; position: fixed; top: 0; left: 0; background-color: #283c51; } #contentRight { padding: 1.3rem 2rem; margin-left: 250px; } #leftNavigation { margin: 2rem 0; } #leftNavigation, #leftNavigation li ul { list-style: none; padding: 0; } #leftNavigation li a { font-size: 0.875rem; display: block; padding: 0.8rem 1rem 0.8rem 3rem; color: #adadad; border-bottom: solid 1px #395673; text-overflow: ellipsis; overflow: hidden; position: relative; -webkit-transition: color 0.2s ease; transition: color 0.2s ease; } #leftNavigation li a, #leftNavigation li a .leftNavIcon { line-height: 120%; } #leftNavigation li a .leftNavIcon { position: absolute; top: 0; left: 0; width: 3rem; padding: 0.8rem 0; text-align: center; } #leftNavigation li a:hover { color: white; } #leftNavigation li ul { display: none; margin: 0; background-color: #17232f; } #leftNavigation li ul li a { border-bottom: solid 1px #233547; } #leftNavigation li ul li:last-child a { border-bottom: none; } #leftNavigation li ul li.active a { color: white; } #leftNavigation li.active > a { color: white; } #leftNavigation li.active ul { display: block; } #leftNavigation > li.active { background-color: #427c97; }
初始化插件
在页面DOM元素加载完毕之后,可以使用下面的方法来初始化该固定侧边栏插件。
$(function() { var verticalNavigation = new SSDSystem.VerticalNavigation(); verticalNavigation.init(); });
配置参数
classMaster
:自动添加到顶级ul
元素上的class。默认值:'master'
。classActive
:添加到激活的菜单项li
元素上的class。默认值:'active'
。classClickable
:添加到第一级li
元素上的class。默认值:'clickable'
。