14 lines
4.8 KiB
JavaScript
14 lines
4.8 KiB
JavaScript
layui.define(["jquery","element","miniTab"],function(m){var i=layui.$,r=layui.layer,u=layui.dropdown,f=layui.element,o=layui.miniTab;if(!/http(s*):\/\//.test(location.href)){var c="请先将项目部署至web容器(Apache/Tomcat/Nginx/IIS/等),否则部分数据将无法显示";return r.alert(c)}var n={render:function(e){e.iniUrl=e.iniUrl||null,e.urlHashLocation=e.urlHashLocation||!1,e.bgColorDefault=e.bgColorDefault||0,e.multiModule=e.multiModule||!1,e.menuChildOpen=e.menuChildOpen||!1,e.loadingTime=e.loadingTime||0,e.pageAnim=e.pageAnim||!1,e.maxTabNum=e.maxTabNum||200,e.isHideOpenMenu=e.isHideOpenMenu?!0:e.isHideOpenMenu,i.getJSON(e.iniUrl,function(a){a==null?n.error("暂无菜单信息"):(n.renderHome(a.homeInfo),n.renderAnim(e.pageAnim),n.listen(),u.render({elem:".menuitemon",data:a.menuInfo,customName:{id:"id",title:"title",children:"children"},trigger:"hover",click:function(t){o.openNewTab({...t,href:t.dizhi})}}),o.render({filter:"layuiminiTab",urlHashLocation:e.urlHashLocation,multiModule:e.multiModule,menuChildOpen:e.menuChildOpen,maxTabNum:e.maxTabNum,menuList:a.menuInfo,homeInfo:a.homeInfo,switchtoindex:e.switchtoindex||!1,listenSwichCallback:function(){n.renderDevice()}}),n.deleteLoader(e.loadingTime),n.isHideOpenMenu(e.isHideOpenMenu))}).fail(function(){n.error("菜单接口有误")})},isHideOpenMenu:function(e){i(".layui-side").on("click",".layui-nav-item",function(){e&&i(this).siblings("li").attr("class","layui-nav-item")})},renderHome:function(e){sessionStorage.setItem("layuiminiHomeHref",e.href),i("#layuiminiHomeTabId").html('<span class="layuimini-tab-active"></span><span class="disable-close">'+e.title+'</span><i class="layui-icon layui-unselect layui-tab-close">ဆ</i>'),i("#layuiminiHomeTabId").attr("lay-id",e.id),i("#layuiminiHomeTabIframe").html('<iframe width="100%" height="100%" frameborder="no" border="0" marginwidth="0" marginheight="0" src="'+e.href+'"></iframe>')},renderAnim:function(e){e&&i("#layuimini-bg-color").after(`<style id="layuimini-page-anim">.layui-tab-item.layui-show {animation:moveTop 1s;-webkit-animation:moveTop 1s;animation-fill-mode:both;-webkit-animation-fill-mode:both;position:relative;height:100%;-webkit-overflow-scrolling:touch;}
|
|
@keyframes moveTop {0% {opacity:0;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px);}
|
|
100% {opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}
|
|
}
|
|
@-o-keyframes moveTop {0% {opacity:0;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px);}
|
|
100% {opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}
|
|
}
|
|
@-moz-keyframes moveTop {0% {opacity:0;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px);}
|
|
100% {opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}
|
|
}
|
|
@-webkit-keyframes moveTop {0% {opacity:0;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px);}
|
|
100% {opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}
|
|
}</style>`)},renderDevice:function(){n.checkMobile()&&(i(".layuimini-tool i").attr("data-side-fold",1),i(".layuimini-tool i").attr("class","layui-icon layui-icon-list"),i(".layui-layout-body").removeClass("layuimini-mini"),i(".layui-layout-body").addClass("layuimini-all"))},deleteLoader:function(e){e?setTimeout(function(){i(".layuimini-loader").fadeOut()},e*1e3):i(".layuimini-loader").fadeOut()},success:function(e){return r.msg(e,{icon:1,shade:this.shade,scrollbar:!1,time:2e3,shadeClose:!0})},error:function(e){return r.msg(e,{icon:2,shade:this.shade,scrollbar:!1,time:3e3,shadeClose:!0})},checkMobile:function(){var e=navigator.userAgent.toLocaleLowerCase(),a=navigator.platform.toLocaleLowerCase(),t=/android/i.test(e)||/iPhone|iPod|iPad/i.test(e)&&/linux/i.test(a)||/ucweb.*linux/i.test(e),l=/iPhone|iPod|iPad/i.test(e)&&!t,s=/Windows Phone|ZuneWP7/i.test(e),d=document.documentElement.clientWidth;return!(!t&&!l&&!s&&d>1024)},listen:function(){i("body").on("mouseenter",".layui-nav-tree .menu-li",function(){if(n.checkMobile())return!1;var e=i(this).attr("class"),a=i(this).prop("innerHTML"),t=i(".layuimini-tool i").attr("data-side-fold");t==0&&a&&(a="<ul class='layuimini-menu-left-zoom layui-nav layui-nav-tree layui-this'><li class='layui-nav-item layui-nav-itemed'>"+a+"</li></ul>",window.openTips=r.tips(a,i(this),{tips:[2,"#2f4056"],time:3e5,skin:"popup-tips",success:function(l){var s=i(l).position().left-10;i(l).css({left:s}),f.render()}}))}),i("body").on("mouseleave",".popup-tips",function(){if(n.checkMobile())return!1;var e=i(".layuimini-tool i").attr("data-side-fold");if(e==0)try{r.close(window.openTips)}catch(a){console.log(a.message)}}),i("body").on("click",".layuimini-make",function(){n.renderDevice()})}};m("xphp",n)});
|