From 0d1a0cbcaf04019ffe09e64d7ca325708aa47e8e Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <xltys1995> Date: 星期六, 10 四月 2021 00:26:22 +0800 Subject: [PATCH] # --- src/main/webapp/static/layui/lay/modules/index.js | 302 +++++++++++++++++++++++++++++++++++++ src/main/webapp/views/index1.html | 134 ++++++++++++++++ 2 files changed, 436 insertions(+), 0 deletions(-) diff --git a/src/main/webapp/static/layui/lay/modules/index.js b/src/main/webapp/static/layui/lay/modules/index.js new file mode 100644 index 0000000..93d9297 --- /dev/null +++ b/src/main/webapp/static/layui/lay/modules/index.js @@ -0,0 +1,302 @@ +/** EasyWeb iframe v3.1.8 date:2020-05-04 License By http://easyweb.vip */ + +layui.define(['layer', 'element', 'admin'], function (exports) { + var $ = layui.jquery; + var layer = layui.layer; + var element = layui.element; + var admin = layui.admin; + var setter = admin.setter; + var headerDOM = '.layui-layout-admin>.layui-header'; + var sideDOM = '.layui-layout-admin>.layui-side>.layui-side-scroll'; + var bodyDOM = '.layui-layout-admin>.layui-body'; + var tabDOM = bodyDOM + '>.layui-tab'; + var titleDOM = bodyDOM + '>.layui-body-header'; + var tabFilter = 'admin-pagetabs'; + var navFilter = 'admin-side-nav'; + var tabEndCall = {}; // Tab鍏抽棴鐨勪簨浠跺洖璋� + var mIsAddTab = false; // 鏄惁鏄坊鍔燭ab锛屾坊鍔燭ab鐨勬椂鍊欏垏鎹笉鑷姩鍒锋柊 + var index = {homeUrl: undefined, mTabPosition: undefined, mTabList: []}; + + /** 娓叉煋涓讳綋閮ㄥ垎 */ + index.loadView = function (param) { + if (!param.menuPath) return layer.msg('url涓嶈兘涓虹┖', {icon: 2, anim: 6}); + if (setter.pageTabs) { // 澶氭爣绛炬ā寮� + var flag; // 閫夐」鍗℃槸鍚﹀凡娣诲姞 + $(tabDOM + '>.layui-tab-title>li').each(function () { + if ($(this).attr('lay-id') === param.menuPath) flag = true; + }); + if (!flag) { // 娣诲姞閫夐」鍗� + if (index.mTabList.length + 1 >= setter.maxTabNum) { + layer.msg('鏈�澶氭墦寮�' + setter.maxTabNum + '涓�夐」鍗�', {icon: 2, anim: 6}); + return admin.activeNav(index.mTabPosition); + } + mIsAddTab = true; + element.tabAdd(tabFilter, { + id: param.menuPath, title: '<span class="title">' + (param.menuName || '') + '</span>', + content: '<iframe class="admin-iframe" lay-id="' + param.menuPath + '" src="' + param.menuPath + + '" onload="layui.index.hideLoading(this);" frameborder="0"></iframe>' + }); + admin.showLoading({elem: $('iframe[lay-id="' + param.menuPath + '"]').parent(), size: ''}); + if (param.menuPath !== index.homeUrl) index.mTabList.push(param); // 璁板綍tab + if (setter.cacheTab) admin.putTempData('indexTabs', index.mTabList); // 缂撳瓨tab + } + if (!param.noChange) element.tabChange(tabFilter, param.menuPath); // 鍒囨崲鍒版tab + } else { // 鍗曟爣绛炬ā寮� + admin.activeNav(param.menuPath); + var $contentDom = $(bodyDOM + '>div>.admin-iframe'); + if ($contentDom.length === 0) { + $(bodyDOM).html([ + '<div class="layui-body-header">', + ' <span class="layui-body-header-title"></span>', + ' <span class="layui-breadcrumb pull-right" lay-filter="admin-body-breadcrumb" style="visibility: visible;"></span>', + '</div>', + '<div style="-webkit-overflow-scrolling: touch;">', + ' <iframe class="admin-iframe" lay-id="', param.menuPath, '" src="', param.menuPath, '"', + ' onload="layui.index.hideLoading(this);" frameborder="0"></iframe>', + '</div>'].join('')); + admin.showLoading({elem: $('iframe[lay-id="' + param.menuPath + '"]').parent(), size: ''}); + } else { + admin.showLoading({elem: $contentDom.parent(), size: ''}); + $contentDom.attr('lay-id', param.menuPath).attr('src', param.menuPath); + } + $('[lay-filter="admin-body-breadcrumb"]').html(index.getBreadcrumbHtml(param.menuPath)); + index.mTabList.splice(0, index.mTabList.length); + if (param.menuPath === index.homeUrl) { + index.mTabPosition = undefined; + index.setTabTitle($(param.menuName).text() || $(sideDOM + ' [lay-href="' + index.homeUrl + '"]').text() || '涓婚〉'); + } else { + index.mTabPosition = param.menuPath; + index.mTabList.push(param); + index.setTabTitle(param.menuName); + } + if (!setter.cacheTab) return; + admin.putTempData('indexTabs', index.mTabList); + admin.putTempData('tabPosition', index.mTabPosition); + } + if (admin.getPageWidth() <= 768) admin.flexible(true); // 绉诲姩绔嚜鍔ㄦ敹璧蜂晶瀵艰埅 + }; + + /** 鍔犺浇涓婚〉 */ + index.loadHome = function (param) { + var cacheTabs = admin.getTempData('indexTabs'); // 鑾峰彇缂撳瓨tab + var cachePosition = admin.getTempData('tabPosition'); + var recover = (param.loadSetting === undefined || param.loadSetting) && (setter.cacheTab && cacheTabs && cacheTabs.length > 0); + index.homeUrl = param.menuPath; + param.noChange = cachePosition ? recover : false; + if (setter.pageTabs || !recover) index.loadView(param); + if (recover) { // 鎭㈠缂撳瓨tab + for (var i = 0; i < cacheTabs.length; i++) { + cacheTabs[i].noChange = cacheTabs[i].menuPath !== cachePosition; + if (!cacheTabs[i].noChange || (setter.pageTabs && !param.onlyLast)) index.loadView(cacheTabs[i]); + } + } + admin.removeLoading(undefined, false); + }; + + /** 鎵撳紑tab */ + index.openTab = function (param) { + if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.openTab(param); + if (param.end) tabEndCall[param.url] = param.end; + index.loadView({menuPath: param.url, menuName: param.title}); + }; + + /** 鍏抽棴tab */ + index.closeTab = function (url) { + if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.closeTab(url); + element.tabDelete(tabFilter, url); + }; + + /** 璁剧疆鏄惁璁板繂Tab */ + index.setTabCache = function (isCache) { + if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.setTabCache(isCache); + admin.putSetting('cacheTab', isCache); + if (!isCache) return index.clearTabCache(); + admin.putTempData('indexTabs', index.mTabList); + admin.putTempData('tabPosition', index.mTabPosition); + }; + + /** 娓呴櫎tab璁板繂 */ + index.clearTabCache = function () { + admin.putTempData('indexTabs', null); + admin.putTempData('tabPosition', null); + }; + + /** 璁剧疆tab鏍囬 */ + index.setTabTitle = function (title, tabId) { + if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.setTabTitle(title, tabId); + if (setter.pageTabs) { + if (!tabId) tabId = $(tabDOM + '>.layui-tab-title>li.layui-this').attr('lay-id'); + if (tabId) $(tabDOM + '>.layui-tab-title>li[lay-id="' + tabId + '"] .title').html(title || ''); + } else if (title) { + $(titleDOM + '>.layui-body-header-title').html(title); + $(titleDOM).addClass('show'); + $(headerDOM).css('box-shadow', '0 1px 0 0 rgba(0, 0, 0, .03)'); + } else { + $(titleDOM).removeClass('show'); + $(headerDOM).css('box-shadow', ''); + } + }; + + /** 鑷畾涔塼ab鏍囬 */ + index.setTabTitleHtml = function (html) { + if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.setTabTitleHtml(html); + if (setter.pageTabs) return; + if (!html) return $(titleDOM).removeClass('show'); + $(titleDOM).html(html); + $(titleDOM).addClass('show'); + }; + + /** 鑾峰彇闈㈠寘灞� */ + index.getBreadcrumb = function (tabId) { + if (!tabId) tabId = $(bodyDOM + '>div>.admin-iframe').attr('lay-id'); + var breadcrumb = []; + var $href = $(sideDOM).find('[lay-href="' + tabId + '"]'); + if ($href.length > 0) breadcrumb.push($href.text().replace(/(^\s*)|(\s*$)/g, '')); + while (true) { + $href = $href.parent('dd').parent('dl').prev('a'); + if ($href.length === 0) break; + breadcrumb.unshift($href.text().replace(/(^\s*)|(\s*$)/g, '')); + } + return breadcrumb; + }; + + /** 鑾峰彇闈㈠寘灞戠粨鏋� */ + index.getBreadcrumbHtml = function (tabId) { + var breadcrumb = index.getBreadcrumb(tabId); + var htmlStr = tabId === index.homeUrl ? '' : ('<a ew-href="' + index.homeUrl + '">棣栭〉</a>'); + for (var i = 0; i < breadcrumb.length - 1; i++) { + if (htmlStr) htmlStr += '<span lay-separator="">/</span>'; + htmlStr += ('<a><cite>' + breadcrumb[i] + '</cite></a>'); + } + return htmlStr; + }; + + /** 鍏抽棴loading */ + index.hideLoading = function (url) { + if (typeof url !== 'string') url = $(url).attr('lay-id'); + admin.removeLoading($('iframe[lay-id="' + url + '"],' + bodyDOM + ' iframe[lay-id]').parent(), false); + }; + + /** 绉诲姩璁惧閬僵灞� */ + var siteShadeDom = '.layui-layout-admin .site-mobile-shade'; + if ($(siteShadeDom).length === 0) $('.layui-layout-admin').append('<div class="site-mobile-shade"></div>'); + $(siteShadeDom).click(function () { + admin.flexible(true); + }); + + /** 琛ュ厖tab鐨刣om */ + if (setter.pageTabs && $(tabDOM).length === 0) { + $(bodyDOM).html([ + '<div class="layui-tab" lay-allowClose="true" lay-filter="', tabFilter, '" lay-autoRefresh="', setter.tabAutoRefresh == 'true', '">', + ' <ul class="layui-tab-title"></ul><div class="layui-tab-content"></div>', + '</div>', + '<div class="layui-icon admin-tabs-control layui-icon-prev" ew-event="leftPage"></div>', + '<div class="layui-icon admin-tabs-control layui-icon-next" ew-event="rightPage"></div>', + '<div class="layui-icon admin-tabs-control layui-icon-down">', + ' <ul class="layui-nav" lay-filter="admin-pagetabs-nav">', + ' <li class="layui-nav-item" lay-unselect>', + ' <dl class="layui-nav-child layui-anim-fadein">', + ' <dd ew-event="closeThisTabs" lay-unselect><a>鍏抽棴褰撳墠鏍囩椤�</a></dd>', + ' <dd ew-event="closeOtherTabs" lay-unselect><a>鍏抽棴鍏跺畠鏍囩椤�</a></dd>', + ' <dd ew-event="closeAllTabs" lay-unselect><a>鍏抽棴鍏ㄩ儴鏍囩椤�</a></dd>', + ' </dl>', + ' </li>', + ' </ul>', + '</div>' + ].join('')); + element.render('nav', 'admin-pagetabs-nav'); + } + + /** 渚у鑸偣鍑荤洃鍚� */ + element.on('nav(' + navFilter + ')', function (elem) { + var $that = $(elem); + var href = $that.attr('lay-href'); + if (!href || href === '#') return; + if (href.indexOf('javascript:') === 0) return new Function(href.substring(11))(); + var name = $that.attr('ew-title') || $that.text().replace(/(^\s*)|(\s*$)/g, ''); + var end = $that.attr('ew-end'); + try { + if (end) end = new Function(end); + else end = undefined; + } catch (e) { + console.error(e); + } + index.openTab({url: href, title: name, end: end}); + layui.event.call(this, 'admin', 'side({*})', {href: href}); + }); + + /** tab鍒囨崲鐩戝惉 */ + element.on('tab(' + tabFilter + ')', function () { + var layId = $(this).attr('lay-id'); + index.mTabPosition = (layId !== index.homeUrl ? layId : undefined); // 璁板綍褰撳墠Tab浣嶇疆 + if (setter.cacheTab) admin.putTempData('tabPosition', index.mTabPosition); + admin.activeNav(layId); + admin.rollPage('auto'); + if ($(tabDOM).attr('lay-autoRefresh') == 'true' && !mIsAddTab) admin.refresh(layId, true); // 鍒囨崲tab鍒锋柊 + mIsAddTab = false; + layui.event.call(this, 'admin', 'tab({*})', {layId: layId}); + }); + + /** tab鍒犻櫎鐩戝惉 */ + element.on('tabDelete(' + tabFilter + ')', function (data) { + var mTab = index.mTabList[data.index - 1]; + if (mTab) { + index.mTabList.splice(data.index - 1, 1); + if (setter.cacheTab) admin.putTempData('indexTabs', index.mTabList); + tabEndCall[mTab.menuPath] && tabEndCall[mTab.menuPath].call(); + layui.event.call(this, 'admin', 'tabDelete({*})', {layId: mTab.menuPath}); + } + if ($(tabDOM + '>.layui-tab-title>li.layui-this').length === 0) + $(tabDOM + '>.layui-tab-title>li:last').trigger('click'); // 瑙e喅鍒犻櫎鍚庡彲鑳芥棤閫変腑bug + }); + + /** 澶氱郴缁熷垏鎹簨浠� */ + $(document).off('click.navMore').on('click.navMore', '[nav-bind]', function () { + var navId = $(this).attr('nav-bind'); + $('ul[lay-filter="' + navFilter + '"]').addClass('layui-hide'); + $('ul[nav-id="' + navId + '"]').removeClass('layui-hide'); + $(headerDOM + '>.layui-nav .layui-nav-item').removeClass('layui-this'); + $(this).parent('.layui-nav-item').addClass('layui-this'); + if (admin.getPageWidth() <= 768) admin.flexible(false); // 灞曞紑渚ц竟鏍� + layui.event.call(this, 'admin', 'nav({*})', {navId: navId}); + }); + + /** 寮�鍚疶ab鍙抽敭鑿滃崟 */ + if (setter.openTabCtxMenu && setter.pageTabs) { + layui.use('contextMenu', function () { + if (!layui.contextMenu) return; + $(tabDOM + '>.layui-tab-title').off('contextmenu.tab').on('contextmenu.tab', 'li', function (e) { + var layId = $(this).attr('lay-id'); + layui.contextMenu.show([{ + icon: 'layui-icon layui-icon-refresh', + name: '鍒锋柊褰撳墠', + click: function () { + element.tabChange(tabFilter, layId); + if ('true' != $(tabDOM).attr('lay-autoRefresh')) admin.refresh(layId); + } + }, { + icon: 'layui-icon layui-icon-close-fill ctx-ic-lg', + name: '鍏抽棴褰撳墠', + click: function () { + admin.closeThisTabs(layId); + } + }, { + icon: 'layui-icon layui-icon-unlink', + name: '鍏抽棴鍏朵粬', + click: function () { + admin.closeOtherTabs(layId); + } + }, { + icon: 'layui-icon layui-icon-close ctx-ic-lg', + name: '鍏抽棴鍏ㄩ儴', + click: function () { + admin.closeAllTabs(); + } + }], e.clientX, e.clientY); + return false; + }); + }); + } + + exports('index', index); +}); diff --git a/src/main/webapp/views/index1.html b/src/main/webapp/views/index1.html new file mode 100644 index 0000000..26a1b5a --- /dev/null +++ b/src/main/webapp/views/index1.html @@ -0,0 +1,134 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <title>瀹忔尯绱у浐浠� - 浠撳偍绠$悊绯荤粺</title> + <meta name="renderer" content="webkit"> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> + <link rel="icon" type="image/x-icon" href="../static/image/logo1.png" /> + <link rel="stylesheet" href="../static/layui/css/layui.css" media="all"> + <link rel="stylesheet" href="../static/css/admin.css?v=318" media="all"> + <!--[if lt IE 9]> + <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> + <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> + <![endif]--> + <style> + </style> +</head> +<body class="layui-layout-body"> +<div class="layui-layout layui-layout-admin"> + <!-- 澶撮儴 --> + <div class="layui-header"> + <div class="layui-logo"> + <img src="assets/images/logo.png"/> + <cite> EasyWeb iframe</cite> + </div> + <ul class="layui-nav layui-layout-left"> + <li class="layui-nav-item" lay-unselect> + <a ew-event="flexible" title="渚ц竟浼哥缉"><i class="layui-icon layui-icon-shrink-right"></i></a> + </li> + <li class="layui-nav-item" lay-unselect> + <a ew-event="refresh" title="鍒锋柊"><i class="layui-icon layui-icon-refresh-3"></i></a> + </li> + </ul> + <ul class="layui-nav layui-layout-right"> + <li class="layui-nav-item" lay-unselect> + <a ew-event="message" title="娑堟伅"> + <i class="layui-icon layui-icon-notice"></i> + <span class="layui-badge-dot"></span> + </a> + </li> + <li class="layui-nav-item" lay-unselect> + <a ew-event="note" title="渚跨"><i class="layui-icon layui-icon-note"></i></a> + </li> + <li class="layui-nav-item layui-hide-xs" lay-unselect> + <a ew-event="fullScreen" title="鍏ㄥ睆"><i class="layui-icon layui-icon-screen-full"></i></a> + </li> + <li class="layui-nav-item layui-hide-xs" lay-unselect> + <a ew-event="lockScreen" title="閿佸睆"><i class="layui-icon layui-icon-password"></i></a> + </li> + <li class="layui-nav-item" lay-unselect> + <a> + <img src="assets/images/head.jpg" class="layui-nav-img"> + <cite>绠$悊鍛�</cite> + </a> + <dl class="layui-nav-child"> + <dd lay-unselect><a ew-href="page/template/user-info.html">涓汉涓績</a></dd> + <dd lay-unselect><a ew-event="psw">淇敼瀵嗙爜</a></dd> + <hr> + <dd lay-unselect><a ew-event="logout" data-url="page/template/login/login.html">閫�鍑�</a></dd> + </dl> + </li> + <li class="layui-nav-item" lay-unselect> + <a ew-event="theme" title="涓婚"><i class="layui-icon layui-icon-more-vertical"></i></a> + </li> + </ul> + </div> + + <!-- 渚ц竟鏍� --> + <div class="layui-side"> + <div class="layui-side-scroll"> + <ul class="layui-nav layui-nav-tree arrow2" lay-filter="admin-side-nav" lay-shrink="_all"> + <li class="layui-nav-item"> + <a><i class="layui-icon layui-icon-home"></i> <cite>Dashboard</cite></a> + <dl class="layui-nav-child"> + <dd><a lay-href="home/console1.html">宸ヤ綔鍙�</a></dd> + <dd><a lay-href="home/console.html">鎺у埗鍙�</a></dd> + <dd><a lay-href="page/console/dashboard.html">鍒嗘瀽椤�</a></dd> + </dl> + </li> + <li class="layui-nav-item"> + <a><i class="layui-icon layui-icon-set"></i> <cite>绯荤粺绠$悊</cite></a> + <dl class="layui-nav-child"> + <dd><a lay-href="page/system/user.html">鐢ㄦ埛绠$悊</a></dd> + <dd><a lay-href="page/system/role.html">瑙掕壊绠$悊</a></dd> + <dd><a lay-href="page/system/authorities.html">鏉冮檺绠$悊</a></dd> + <dd><a lay-href="page/system/dictionary.html">瀛楀吀绠$悊</a></dd> + <dd><a lay-href="page/system/organization.html">鏈烘瀯绠$悊</a></dd> + <dd><a lay-href="page/system/login-record.html">鐧诲綍鏃ュ織</a></dd> + </dl> + </li> + </ul> + </div> + </div> + + <!-- 涓讳綋閮ㄥ垎 --> + <div class="layui-body"></div> + <!-- 搴曢儴 --> + <div class="layui-footer layui-text"> + copyright 漏 2020 <a href="http://easyweb.vip" target="_blank">easyweb.vip</a> all rights reserved. + <span class="pull-right">Version 3.1.8</span> + </div> + +</div> + +<!-- 鍔犺浇鍔ㄧ敾 --> +<div class="page-loading"> + <div class="ball-loader"> + <span></span><span></span><span></span><span></span> + </div> +</div> + +<script type="text/javascript" src="../static/layuiadmin/layui/layui.js"></script> +<script type="text/javascript" src="../static/js/common.js"></script> + +<script> + layui.config({ + base: baseUrl + "/static/layui/lay/modules/" + }).use(['index','element'], function () { + var $ = layui.jquery; + var index = layui.index; + + // 榛樿鍔犺浇涓婚〉 + index.loadHome({ + menuPath: baseUrl+'/views/home/console.html', + menuName: '<i class="layui-icon layui-icon-home"></i>' + }); + + }); +</script> +</body> +</html> + + -- Gitblit v1.9.1