• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >bootstrap > 值得分享的Bootstrap Ace模板实现菜单和Tab页效果

值得分享的Bootstrap Ace模板实现菜单和Tab页效果

作者:懒得安分 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含bootstrap ace tab,bootstrap ace,bootstrap ace官网,bootstrap ace模板,bootstrap ace教程等相关知识,懒得安分 希望在学习及工作中可以帮助到您

本文分享了项目中使用Ace模板的菜单样式和基于iframe的Tab页效果。

一、效果展示

折腾了好久,终于将菜单样式和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>

</div>

呵呵,看着还是挺多的吧。除了最后一个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>
</div>

再来看看sidebar-menu.js这个文件里面封装的方法:

(function ($) {
 $.fn.sidebarMenu = function (options) {
  options = $.extend({}, $.fn.sidebarMenu.defaults, options || {});
  var target = $(this);
  target.addClass('nav');
  target.addClass('nav-list');
  if (options.data) {
   init(target, options.data);
  }
  else {
   if (!options.url) return;
   $.getJSON(options.url, options.param, function (data) {
    init(target, data);
   });
  }
  var url = window.location.pathname;
  //menu = target.find("[href='" + url + "']");
  //menu.parent().addClass('active');
  //menu.parent().parentsUntil('.nav-list', 'li').addClass('active').addClass('open');
  function init(target, data) {
   $.each(data, function (i, item) {
    var li = $('<li></li>');
    var a = $('<a></a>');
    var icon = $('<i></i>');
    //icon.addClass('glyphicon');
    icon.addClass(item.icon);
    var text = $('<span></span>');
    text.addClass('menu-text').text(item.text);
    a.append(icon);
    a.append(text);
    if (item.menus&&item.menus.length>0) {
     a.attr('href', '#');
     a.addClass('dropdown-toggle');
     var arrow = $('<b></b>');
     arrow.addClass('arrow').addClass('icon-angle-down');
     a.append(arrow);
     li.append(a);
     var menus = $('<ul></ul>');
     menus.addClass('submenu');
     init(menus, item.menus);
     li.append(menus);
    }
    else {
     var href = 'javascript:addTabs({id:\'' + item.id + '\',title: \'' + item.text + '\',close: true,url: \'' + item.url + '\'});';
     a.attr('href', href);
     //if (item.istab)
     // a.attr('href', href);
     //else {
     // a.attr('href', item.url);
     // a.attr('title', item.text);
     // a.attr('target', '_blank')
     //}
     li.append(a);
    }
    target.append(li);
   });
  }
 }

 $.fn.sidebarMenu.defaults = {
  url: null,
  param: null,
  data: null
 };
})(jQuery);

</div>

在页面上面直接调用sidebar-menu的方法

$(function () {
   $('#menu').sidebarMenu({
    data: [{
     id: '1',
     text: '系统设置',
     icon: 'icon-cog',
     url: '',
     menus: [{
      id: '11',
      text: '编码管理',
      icon: 'icon-glass',
      url: '/CodeType/Index'
     }]
    }, {
     id: '2',
     text: '基础数据',
     icon: 'icon-leaf',
     url: '',
     menus: [{
      id: '21',
      text: '基础特征',
      icon: 'icon-glass',
      url: '/BasicData/BasicFeature/Index'
     }, {
      id: '22',
      text: '特征管理',
      icon: 'icon-glass',
      url: '/BasicData/Features/Index'
     }, {
      id: '23',
      text: '物料维护',
      icon: 'icon-glass',
      url: '/Model/Index'
     }, {
      id: '24',
      text: '站点管理',
      icon: 'icon-glass',
      url: '/Station/Index'
     }]
    }, {
     id: '3',
     text: '权限管理',
     icon: 'icon-user',
     url: '',
     menus: [{
      id: '31',
      text: '用户管理',
      icon: 'icon-user',
      url: '/SystemSetting/User'
     }, {
      id: '32',
      text: '角色管理',
      icon: 'icon-apple',
      url: '/SystemSetting/Role'
     }, {
      id: '33',
      text: '菜单管理',
      icon: 'icon-list',
      url: '/SystemSetting/Menu'
     }, {
      id: '34',
      text: '部门管理',
      icon: 'icon-glass',
      url: '/SystemSetting/Department'
     }]
    }, {
     id: '4',
     text: '订单管理',
     icon: 'icon-envelope',
     url: '',
     menus: [{
      id: '41',
      text: '订单查询',
      icon: 'icon-glass',
      url: '/Order/Query'
     }, {
      id: '42',
      text: '订单排产',
      icon: 'icon-glass',
      url: '/Order/PLANTPRODUCT'
     }, {
      id: '43',
      text: '订单撤排',
      icon: 'icon-glass',
      url: '/Order/cancelPRODUCT'
     }, {
      id: '44',
      text: '订单HOLD',
      icon: 'icon-glass',
      url: '/Order/hold'
     }, {
      id: '45',
      text: '订单删除',
      icon: 'icon-glass',
      url: '/Order/delete'
     }, {
      id: '47',
      t
  


 

您可能想查找下面的文章:

  • 值得分享的Bootstrap Ace模板实现菜单和Tab页效果

相关文章

  • 2017-05-30JS组件Bootstrap实现图片轮播效果
  • 2017-05-30JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
  • 2017-05-30使用BootStrapValidator完成前端输入验证
  • 2017-05-30JS组件Bootstrap实现下拉菜单效果代码
  • 2017-05-30Bootstrap表单布局样式源代码
  • 2017-05-30Bootstrap按钮下拉菜单组件详解
  • 2017-05-30Bootstrap教程JS插件弹出框学习笔记分享
  • 2017-05-30Bootstrap打造一个左侧折叠菜单的系统模板(一)
  • 2017-08-24Bootstrap布局组件
  • 2017-05-30Bootstrap+jfinal实现省市级联下拉菜单

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • Bootstrap table分页问题汇总
    • JSP基于Bootstrap分页显示实例解析
    • JS组件Bootstrap Table布局详解
    • BootStrap中的table实现数据填充与分页应用小结
    • 值得分享的Bootstrap Ace模板实现菜单和Tab页效果
    • Bootstrap 标签页(Tab)插件
    • 值得分享的轻量级Bootstrap Table表格插件
    • Bootstrap布局方式详解
    • Bootstrap每天必学之导航组件
    • Bootstrap每天必学之级联下拉菜单

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有