You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
2.9 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/**
@NamelayuiAdmin iframe版主入口
@Author贤心
@Sitehttp://www.layui.com/admin/
@LicenseLPPL
*/
layui.extend({
setter: 'config' //配置模块
,admin: 'lib/admin' //核心模块
,view: 'lib/view' //视图渲染模块
}).define(['setter', 'admin'], function(exports){
var setter = layui.setter
,element = layui.element
,admin = layui.admin
,tabsPage = admin.tabsPage
,view = layui.view
//打开标签页
,openTabsPage = function(url, text){
//遍历页签选项卡
var matchTo
,tabs = $('#LAY_app_tabsheader>li')
,path = url.replace(/(^http(s*):)|(\?[\s\S]*$)/g, '');
tabs.each(function(index){
var li = $(this)
,layid = li.attr('lay-id');
if(layid === url){
matchTo = true;
tabsPage.index = index;
}
});
text = text || '新标签页';
if(setter.pageTabs){
//如果未在选项卡中匹配到,则追加选项卡
if(!matchTo){
$(APP_BODY).append([
'<div class="layadmin-tabsbody-item layui-show">'
,'<iframe src="'+ url +'" frameborder="0" class="layadmin-iframe"></iframe>'
,'</div>'
].join(''));
tabsPage.index = tabs.length;
element.tabAdd(FILTER_TAB_TBAS, {
title: '<span>'+ text +'</span>'
,id: url
,attr: path
});
}
} else {
var iframe = admin.tabsBody(admin.tabsPage.index).find('.layadmin-iframe');
iframe[0].contentWindow.location.href = url;
}
//定位当前tabs
element.tabChange(FILTER_TAB_TBAS, url);
admin.tabsBodyChange(tabsPage.index, {
url: url
,text: text
});
}
,APP_BODY = '#LAY_app_body', FILTER_TAB_TBAS = 'layadmin-layout-tabs'
,$ = layui.$, $win = $(window);
//初始
if(admin.screen() < 2) admin.sideFlexible();
//扩展 easyCropper
layui.extend({
'cropper':'{/}' + setter.base + 'lib/extend/easyCropper/cropper',
'croppers':'{/}' + setter.base + 'lib/extend/easyCropper/croppers',
'easyCropper':'{/}' + setter.base + 'lib/extend/easyCropper/easyCropper'
});
//将模块根路径设置为 controller 目录
layui.config({
base: setter.base + 'modules/'
});
//扩展 lib 目录下的其它模块
layui.each(setter.extend, function(index, item){
var mods = {};
mods[item] = '{/}' + setter.base + 'lib/extend/' + item;
layui.extend(mods);
});
view().autoRender();
//加载公共模块
layui.use('common');
layui.use('layer', function(){
layui.layer.config({
shade: [0.7, '#000']
,skin: 'layer-skin'
,move: false
// ,offset: '100px'
,resize: false
});
});
//对外输出
exports('index', {
openTabsPage: openTabsPage
});
});