/*
@Author: 请叫我马哥
@Time: 2017-04
@Tittle: tab
@Description: 点击对应按钮添加新窗口
*/
var tabFilter,menu=[],liIndex,curNav,delMenu;
layui.define(["element","jquery"],function(exports){
var element = layui.element,
$ = layui.jquery,
layId,
Tab = function(){
this.tabConfig = {
closed : true,
openTabNum : undefined, //最大可打开窗口数量
tabFilter : "bodyTab", //添加窗口的filter
url : undefined //获取菜单json地址
}
};
//获取二级菜单数据
Tab.prototype.render = function() {
var url = this.tabConfig.url;
$.get(url,function(data){
//显示左侧菜单
if($(".navBar").html() == ''){
var _this = this;
$(".navBar").html(navBar(data)).height($(window).height()-245);
element.init(); //初始化页面元素
$(window).resize(function(){
$(".navBar").height($(window).height()-245);
})
}
})
}
//参数设置
Tab.prototype.set = function(option) {
var _this = this;
$.extend(true, _this.tabConfig, option);
return _this;
};
//通过title获取lay-id
Tab.prototype.getLayId = function(title){
$(".layui-tab-title.top_tab li").each(function(){
if($(this).find("cite").text() == title){
layId = $(this).attr("lay-id");
}
})
return layId;
}
//通过title判断tab是否存在
Tab.prototype.hasTab = function(title){
var tabIndex = -1;
$(".layui-tab-title.top_tab li").each(function(){
if($(this).find("cite").text() == title){
tabIndex = 1;
}
})
return tabIndex;
}
//右侧内容tab操作
var tabIdIndex = 0;
Tab.prototype.tabAdd = function(_this){
if(window.sessionStorage.getItem("menu")){
menu = JSON.parse(window.sessionStorage.getItem("menu"));
}
var that = this;
var closed = that.tabConfig.closed,
openTabNum = that.tabConfig.openTabNum;
tabFilter = that.tabConfig.tabFilter;
if(_this.attr("target") == "_blank"){
window.location.href = _this.attr("data-url");
}else{
var title = '';
if(_this.find("i.iconfont,i.layui-icon").attr("data-icon") != undefined){
if(_this.find("i.iconfont").attr("data-icon") != undefined){
title += '';
}else{
title += ''+_this.find("i.layui-icon").attr("data-icon")+'';
}
}
//已打开的窗口中不存在
if(that.hasTab(_this.find("cite").text()) == -1 && _this.siblings("dl.layui-nav-child").length == 0 && _this.attr("data-url")){
if($(".layui-tab-title.top_tab li").length == openTabNum){
layer.msg('只能同时打开'+openTabNum+'个选项卡哦。不然系统会卡的!');
return;
}
tabIdIndex++;
title += ''+_this.find("cite").text()+'';
title += 'ဆ';
element.tabAdd(tabFilter, {
title : title,
content :"