前言:最近園子里多了許多談語言、談環境、談逼格(格局)的文章,看看笑笑過后,殊不知其實都是然並卵。提升自己的技術才是王道。之前博主分享過多篇bootstrap組件的文章,引起了很多園友的關注和支持,看樣子這種風格還是受到很多園友青睞的。本着不辜負園友們的支持的原則,應群友們的要求,今天來分享下項目中使用Ace模板的菜單樣式和基於iframe的Tab頁效果。
Ace模板地址:http://code.google.com/p/ace-engine/wiki/AceTemplate(有時會打不開)
Ace英文官網:http://wrapbootstrap.com/preview/WB0B30DGR
Ace模板功能介紹地址:http://www.cnblogs.com/txw1958/p/Ace-Responsive-Admin-Template.html
系列文章
一、效果展示
折騰了好久,終於將菜單樣式和Tab頁的效果從項目中抽出來了,園友們且看且珍惜哈~~
1、初始加載出來的效果
2、展開菜單(支持多級展開,后面代碼介紹)
3、點擊子菜單,以Tab頁的形式打開對應的頁面
4、支持菜單折疊
5、打開的菜單過多時自動換行顯示,折疊后自適應
二、代碼示例
有現成的東西用起來就是爽,總的來說Bootstrap Ace模板的功能還是比較強大的,並且支持各種終端設備。本文主要使用的它的菜單的效果,下面就來看看Ace模板菜單效果的實現代碼。
1、菜單效果
由於Ace是基於Bootstrap的,所以首先需要引用jquery和bootstrap組件,先來總的看看它需要引用哪些文件吧。
<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標簽:
<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這個文件里面封裝的方法:
在頁面上面直接調用sidebar-menu的方法
這里需要說明的很重要的一點就是關於菜單前面的小圖標,icon屬性對應的是http://v3.bootcss.com/components/頁面里面的圖標的樣式:
con的值為icon-user的時候,菜單上面就會顯示一個如圖的小圖標。當然一般情況下,菜單肯定是動態加載的的,如果需要從后台取數據,可以直接調用此方法:
$('#menu').sidebarMenu({ url: "/api/Api/GetMenuByUser/", param: { strUser: 'admin' } });
即可,呵呵,很簡單吧。
2、Tab頁效果
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方法
那么,在什么時候調用Addtabs方法呢?答案是注冊菜單click事件的時候,這部分代碼在前面sidebar-menu組件封裝的時候就有,可以看看上面。
三、總結
以上就是bootstrap ace模板的菜單和Tab頁效果的展示,總的來說,基本的功能具備了,但菜單的樣式還有待調整,比如點擊某個菜單之后,點擊的菜單需要給一個選中的狀態。如果你的項目也是用的bootstrap風格,研究下ace模板,可以使用起來試試。
PS:關於ace模板收費的問題許多園友在評論中提到了,博主補充說明幾點:
1、ace模板確實是收費的,官網上面寫的很清楚:$18。這個毋庸置疑。
2、本文只使用了ace的一個菜單功能,並且引用的文件都是從網上找來的,所以對於本文的效果並不存在收費一說。
源碼下載地址:https://download.csdn.net/download/landeanfen/12323940