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


前言:最近園子里多了許多談語言、談環境、談逼格(格局)的文章,看看笑笑過后,殊不知其實都是然並卵。提升自己的技術才是王道。之前博主分享過多篇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組件封裝

在頁面上面直接調用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方法

bootstrap-tab.js

那么,在什么時候調用Addtabs方法呢?答案是注冊菜單click事件的時候,這部分代碼在前面sidebar-menu組件封裝的時候就有,可以看看上面。

三、總結

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

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

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

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

 

源碼下載地址:https://download.csdn.net/download/landeanfen/12323940 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM