原文地址:JS組件系列——基於Bootstrap Ace模板的菜單和Tab頁效果分享(你值得擁有)css
前言:最近園子裏多了許多談語言、談環境、談逼格(格局)的文章,看看笑笑事後,卻不知其實都是然並卵。提高本身的技術纔是王道。以前博主分享過多篇bootstrap組件的文章,引發了不少園友的關注和支持,看樣子這種風格仍是受到不少園友青睞的。本着不辜負園友們的支持的原則,應羣友們的要求,今天來分享下項目中使用Ace模板的菜單樣式和基於iframe的Tab頁效果。html
Ace模板地址:http://code.google.com/p/ace-engine/wiki/AceTemplate(有時會打不開)jquery
Ace英文官網:http://wrapbootstrap.com/preview/WB0B30DGRbootstrap
Ace模板功能介紹地址:http://www.cnblogs.com/txw1958/p/Ace-Responsive-Admin-Template.htmlapi
折騰了很久,終於將菜單樣式和Tab頁的效果從項目中抽出來了,園友們且看且珍惜哈~~ide
有現成的東西用起來就是爽,總的來講Bootstrap Ace模板的功能仍是比較強大的,而且支持各類終端設備。本文主要使用的它的菜單的效果,下面就來看看Ace模板菜單效果的實現代碼。google
因爲Ace是基於Bootstrap的,因此首先須要引用jquery和bootstrap組件,先來總的看看它須要引用哪些文件吧。url
<script src="/Scripts/jquery-1.9.1.min.js"></script> <script src="/Content/bootstrap/js/bootstrap.min.js"></script> <link href="/Content/bootstrap/css/bootstrap.min.css" rel="stylesheet" /> <link href="/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" /> <link href="/Content/ace/css/ace-rtl.min.css" rel="stylesheet" /> <link href="/Content/ace/css/ace-skins.min.css" rel="stylesheet" /> <link href="/Content/sidebar-menu/sidebar-menu.css" rel="stylesheet"/> <script src="/Content/ace/js/ace-extra.min.js"></script> <script src="/Content/ace/js/ace.min.js"></script>
<script src="/Content/sidebar-menu/sidebar-menu.js"></script>
呵呵,看着仍是挺多的吧。除了最後一個js文件(<script src="/Content/sidebar-menu/sidebar-menu.js"></script>)是博主本身封裝的,其餘基本都是些組件須要的特性組件。看看頁面上面要放哪些html標籤:spa
<div class="sidebar" id="sidebar"> <ul class="nav nav-list" id="menu"></ul> <div class="sidebar-collapse" id="sidebar-collapse"> <i class="icon-double-angle-left" data-icon1="icon-double-angle-left" data-icon2="icon-double-angle-right"></i> </div> </div>
再來看看sidebar-menu.js這個文件裏面封裝的方法:code
sidebar-menu組件封裝
在頁面上面直接調用sidebar-menu的方法
這裏須要說明的很重要的一點就是關於菜單前面的小圖標,icon屬性對應的是http://v3.bootcss.com/components/頁面裏面的圖標的樣式:
con的值爲icon-user的時候,菜單上面就會顯示一個如圖的小圖標。固然通常狀況下,菜單確定是動態加載的的,若是須要從後臺取數據,能夠直接調用此方法:
$('#menu').sidebarMenu({ url: "/api/Api/GetMenuByUser/", param: { strUser: 'admin' } });
便可,呵呵,很簡單吧。
Tab頁的效果實際上是和左邊菜單息息相關的,首先仍是看看Tab頁效果的js引用。
<script src="/Scripts/bootstrap-tab.js"></script>
頁面的html標籤:
<div class="main-content"><div class="page-content"> <div class="row"> <div class="col-xs-12" style="padding-left:5px;"> <ul class="nav nav-tabs" role="tablist"> <li class="active"><a href="#Index" role="tab" data-toggle="tab">首頁</a></li> </ul> <div class="tab-content"> <div role="tabpanel" class="tab-pane active" id="Index"> </div> </div> </div> </div> </div> </div>
bootstrap-tab.js這個文件裏面封裝了addTabs方法
bootstrap-tab.js
那麼,在何時調用Addtabs方法呢?答案是註冊菜單click事件的時候,這部分代碼在前面sidebar-menu組件封裝的時候就有,能夠看看上面。
以上就是bootstrap ace模板的菜單和Tab頁效果的展現,總的來講,基本的功能具有了,但菜單的樣式還有待調整,好比點擊某個菜單以後,點擊的菜單須要給一個選中的狀態。若是你的項目也是用的bootstrap風格,研究下ace模板,可使用起來試試。
PS:關於ace模板收費的問題許多園友在評論中提到了,博主補充說明幾點:
一、ace模板確實是收費的,官網上面寫的很清楚:$18。這個毋庸置疑。
二、本文只使用了ace的一個菜單功能,而且引用的文件都是從網上找來的,因此對於本文的效果並不存在收費一說。