值得分享的Bootstrap Ace模板实现菜单和Tab页效果
本文分享了项目中使用Ace模板的菜单样式和基于iframe的Tab页效果。 一、效果展示折腾了好久,终于将菜单样式和Tab页的效果从项目中抽出来了。 1、初始加载出来的效果 2、展开菜单(支持多级展开,后面代码介绍) 3、点击子菜单,以Tab页的形式打开对应的页面 4、支持菜单折叠 5、打开的菜单过多时自动换行显示,折叠后自适应 二、代码示例有现成的东西用很方便的,总的来说Bootstrap Ace模板的功能还是比较强大的,并且支持各种终端设备。本文主要使用的它的菜单的效果,下面就来看看Ace模板菜单效果的实现代码。 1、菜单效果 由于Ace是基于Bootstrap的,所以首先需要引用jquery和bootstrap组件,先来总的看看它需要引用哪些文件吧。 <script src="/Content/bootstrap/js/bootstrap.min.js"> <script src="/Content/ace/js/ace-extra.min.js"><script src="/Content/ace/js/ace.min.js"> <script src="/Content/sidebar-menu/sidebar-menu.js"> 呵呵,看着还是挺多的吧。除了最后一个js文件( 页面的html标签: bootstrap-tab.js这个文件里面封装了addTabs方法 ';
//是否指定TAB内容
if (options.content) {
content = ' ';
} else {//没有内容,使用IFRAME打开链接
content = '';
}
//加入TABS
$(".nav-tabs").append(title);
$(".tab-content").append(content);
}
//激活TAB
$("#tab_" + id).addClass('active');
$("#" + id).addClass("active");
};
var closeTab = function (id) {
//如果关闭的是当前激活的TAB,激活他的前一个TAB
if ($("li.active").attr('id') == "tab_" + id) {
$("#tab_" + id).prev().addClass('active');
$("#" + id).prev().addClass('active');
}
//关闭TAB
$("#tab_" + id).remove();
$("#" + id).remove();
};
$(function () {
mainHeight = $(document.body).height() - 45;
$('.main-left,.main-right').height(mainHeight);
$("[addtabs]").click(function () {
addTabs({ id: $(this).attr("id"),title: $(this).attr('title'),close: true });
});
$(".nav-tabs").on("click","[tabclose]",function (e) { 那么,在什么时候调用Addtabs方法呢?答案是注册菜单click事件的时候,这部分代码在前面sidebar-menu组件封装的时候就有,可以看看上面。 如果大家还想深入学习,可以点击进行学习,再为大家附两个精彩的专题: 以上就是bootstrap ace模板的菜单和Tab页效果的展示,总的来说,基本的功能具备了,但菜单的样式还有待调整,比如点击某个菜单之后,点击的菜单需要给一个选中的状态。如果你的项目也是用的bootstrap风格,研究下ace模板,可以使用起来试试。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |