JS組件系列——基於Bootstrap Ace模板的菜單和Tab頁效果分享(你值得擁有)

原文地址: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

1、效果展現

折騰了很久,終於將菜單樣式和Tab頁的效果從項目中抽出來了,園友們且看且珍惜哈~~ide

一、初始加載出來的效果

二、展開菜單(支持多級展開,後面代碼介紹)

三、點擊子菜單,以Tab頁的形式打開對應的頁面

四、支持菜單摺疊

五、打開的菜單過多時自動換行顯示,摺疊後自適應

 

2、代碼示例

有現成的東西用起來就是爽,總的來講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頁的效果實際上是和左邊菜單息息相關的,首先仍是看看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組件封裝的時候就有,能夠看看上面。

3、總結

以上就是bootstrap ace模板的菜單和Tab頁效果的展現,總的來講,基本的功能具有了,但菜單的樣式還有待調整,好比點擊某個菜單以後,點擊的菜單須要給一個選中的狀態。若是你的項目也是用的bootstrap風格,研究下ace模板,可使用起來試試。

 

PS:關於ace模板收費的問題許多園友在評論中提到了,博主補充說明幾點:

一、ace模板確實是收費的,官網上面寫的很清楚:$18。這個毋庸置疑。

二、本文只使用了ace的一個菜單功能,而且引用的文件都是從網上找來的,因此對於本文的效果並不存在收費一說。

相關文章
相關標籤/搜索