hello 2020-09-16 11:48:57 +08:00
parent 725c90ee30
commit f788122ecf
2 changed files with 396 additions and 393 deletions

BIN
images/qq5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 KiB

View File

@ -2,429 +2,432 @@
var objOkTab = ""; var objOkTab = "";
layui.use(["element", "form", "layer", "okUtils", "okTab", "okLayer", "okContextMenu", "okHoliday", "laydate"], function () { layui.use(["element", "form", "layer", "okUtils", "okTab", "okLayer", "okContextMenu", "okHoliday", "laydate"], function () {
var okUtils = layui.okUtils; var okUtils = layui.okUtils;
var $ = layui.jquery; var $ = layui.jquery;
var form = layui.form; var form = layui.form;
var laydate = layui.laydate; var laydate = layui.laydate;
var layer = layui.layer; var layer = layui.layer;
var okLayer = layui.okLayer; var okLayer = layui.okLayer;
var okHoliday = layui.okHoliday; var okHoliday = layui.okHoliday;
var okTab = layui.okTab({ var okTab = layui.okTab({
// 菜单请求路径 // 菜单请求路径
url: "data/navs.json", url: "data/navs.json",
// 允许同时选项卡的个数 // 允许同时选项卡的个数
openTabNum: 30, openTabNum: 30,
// 如果返回的结果和navs.json中的数据结构一致可省略这个方法 // 如果返回的结果和navs.json中的数据结构一致可省略这个方法
parseData: function (data) { parseData: function (data) {
return data; return data;
} }
}); });
var config = okUtils.local("okConfig") || okConfig || {}; var config = okUtils.local("okConfig") || okConfig || {};
objOkTab = okTab; objOkTab = okTab;
okLoading && okLoading.close(); okLoading && okLoading.close();
/**关闭加载动画*/ /**关闭加载动画*/
$(".layui-layout-admin").removeClass("orange_theme blue_theme"); $(".layui-layout-admin").removeClass("orange_theme blue_theme");
$(".layui-layout-admin").addClass(config.theme); $(".layui-layout-admin").addClass(config.theme);
if (config.menuArrow) { //tab箭头样式 if (config.menuArrow) { //tab箭头样式
$("#navBar").addClass(config.menuArrow); $("#navBar").addClass(config.menuArrow);
} }
/** /**
* 左侧导航渲染完成之后的操作 * 左侧导航渲染完成之后的操作
*/ */
okTab.render(function () { okTab.render(function () {
/**tab栏的鼠标右键事件**/ /**tab栏的鼠标右键事件**/
$("body .ok-tab").okContextMenu({ $("body .ok-tab").okContextMenu({
width: 'auto', width: 'auto',
itemHeight: 30, itemHeight: 30,
menu: [ menu: [
{ {
text: "定位所在页", text: "定位所在页",
icon: "ok-icon ok-icon-location", icon: "ok-icon ok-icon-location",
callback: function () { callback: function () {
okTab.positionTab(); okTab.positionTab();
} }
}, },
{ {
text: "关闭当前页", text: "关闭当前页",
icon: "ok-icon ok-icon-roundclose", icon: "ok-icon ok-icon-roundclose",
callback: function () { callback: function () {
okTab.tabClose(1); okTab.tabClose(1);
} }
}, },
{ {
text: "关闭其他页", text: "关闭其他页",
icon: "ok-icon ok-icon-roundclose", icon: "ok-icon ok-icon-roundclose",
callback: function () { callback: function () {
okTab.tabClose(2); okTab.tabClose(2);
} }
}, },
{ {
text: "关闭所有页", text: "关闭所有页",
icon: "ok-icon ok-icon-roundclose", icon: "ok-icon ok-icon-roundclose",
callback: function () { callback: function () {
okTab.tabClose(3); okTab.tabClose(3);
} }
} }
] ]
}); });
}); });
/**系统设置*/ /**系统设置*/
$("body").on("click", "#okSetting", function () { $("body").on("click", "#okSetting", function () {
layer.open({ layer.open({
type: 2, type: 2,
title: "系统设置", title: "系统设置",
shadeClose: true, shadeClose: true,
closeBtn: 0, //不显示关闭按钮 closeBtn: 0, //不显示关闭按钮
skin: "slideInRight ok-setting", skin: "slideInRight ok-setting",
area: ['340px', '100%'], area: ['340px', '100%'],
offset: 'r', //右边 offset: 'r', //右边
time: 200000, //2秒后自动关闭 time: 200000, //2秒后自动关闭
anim: -1, anim: -1,
content: "./pages/system/setting.html" content: "./pages/system/setting.html"
}); });
}); });
/** /**
* 添加新窗口 * 添加新窗口
*/ */
$("body").on("click", "#navBar .layui-nav-item a, #userInfo a", function () { $("body").on("click", "#navBar .layui-nav-item a, #userInfo a", function () {
// 如果不存在子级 // 如果不存在子级
if ($(this).siblings().length == 0) { if ($(this).siblings().length == 0) {
okTab.tabAdd($(this)); okTab.tabAdd($(this));
} }
// 关闭其他展开的二级标签 // 关闭其他展开的二级标签
$(this).parent("li").siblings().removeClass("layui-nav-itemed"); $(this).parent("li").siblings().removeClass("layui-nav-itemed");
if (!$(this).attr("lay-id")) { if (!$(this).attr("lay-id")) {
var topLevelEle = $(this).parents("li.layui-nav-item"); var topLevelEle = $(this).parents("li.layui-nav-item");
var childs = $("#navBar > li > dl.layui-nav-child").not(topLevelEle.children("dl.layui-nav-child")); var childs = $("#navBar > li > dl.layui-nav-child").not(topLevelEle.children("dl.layui-nav-child"));
childs.removeAttr("style"); childs.removeAttr("style");
} }
}); });
/** /**
* 左侧菜单展开动画 * 左侧菜单展开动画
*/ */
$("#navBar").on("click", ".layui-nav-item a", function () { $("#navBar").on("click", ".layui-nav-item a", function () {
if (!$(this).attr("lay-id")) { if (!$(this).attr("lay-id")) {
var superEle = $(this).parent(); var superEle = $(this).parent();
var ele = $(this).next('.layui-nav-child'); var ele = $(this).next('.layui-nav-child');
var height = ele.height(); var height = ele.height();
ele.css({"display": "block"}); ele.css({"display": "block"});
// 是否是展开状态 // 是否是展开状态
if (superEle.is(".layui-nav-itemed")) { if (superEle.is(".layui-nav-itemed")) {
ele.height(0); ele.height(0);
ele.animate({height: height + "px"}, function () { ele.animate({height: height + "px"}, function () {
ele.css({height: "auto"}); ele.css({height: "auto"});
}); });
} else { } else {
ele.animate({height: 0}, function () { ele.animate({height: 0}, function () {
ele.removeAttr("style"); ele.removeAttr("style");
}); });
} }
} }
}); });
/** /**
* 左边菜单显隐功能 * 左边菜单显隐功能
*/ */
$(".ok-menu").click(function () { $(".ok-menu").click(function () {
$(".layui-layout-admin").toggleClass("ok-left-hide"); $(".layui-layout-admin").toggleClass("ok-left-hide");
$(this).find("i").toggleClass("ok-menu-hide"); $(this).find("i").toggleClass("ok-menu-hide");
localStorage.setItem("isResize", false); localStorage.setItem("isResize", false);
setTimeout(function () { setTimeout(function () {
localStorage.setItem("isResize", true); localStorage.setItem("isResize", true);
}, 1200); }, 1200);
}); });
/** /**
* 移动端的处理事件 * 移动端的处理事件
*/ */
$("body").on("click", ".layui-layout-admin .ok-left a[data-url], .ok-make", function () { $("body").on("click", ".layui-layout-admin .ok-left a[data-url], .ok-make", function () {
if ($(".layui-layout-admin").hasClass("ok-left-hide")) { if ($(".layui-layout-admin").hasClass("ok-left-hide")) {
$(".layui-layout-admin").removeClass("ok-left-hide"); $(".layui-layout-admin").removeClass("ok-left-hide");
$(".ok-menu").find('i').removeClass("ok-menu-hide"); $(".ok-menu").find('i').removeClass("ok-menu-hide");
} }
}); });
/** /**
* tab左右移动 * tab左右移动
*/ */
$("body").on("click", ".okNavMove", function () { $("body").on("click", ".okNavMove", function () {
var moveId = $(this).attr("data-id"); var moveId = $(this).attr("data-id");
var that = this; var that = this;
okTab.navMove(moveId, that); okTab.navMove(moveId, that);
}); });
/** /**
* 刷新当前tab页 * 刷新当前tab页
*/ */
$("body").on("click", ".ok-refresh", function () { $("body").on("click", ".ok-refresh", function () {
okTab.refresh(this, function (okTab) { okTab.refresh(this, function (okTab) {
//刷新之后所处理的事件 //刷新之后所处理的事件
}); });
}); });
/** /**
* 关闭tab页 * 关闭tab页
*/ */
$("body").on("click", "#tabAction a", function () { $("body").on("click", "#tabAction a", function () {
var num = $(this).attr("data-num"); var num = $(this).attr("data-num");
okTab.tabClose(num); okTab.tabClose(num);
}); });
/** /**
* 键盘的事件监听 * 键盘的事件监听
*/ */
$("body").on("keydown", function (event) { $("body").on("keydown", function (event) {
event = event || window.event || arguments.callee.caller.arguments[0]; event = event || window.event || arguments.callee.caller.arguments[0];
// 按 Esc // 按 Esc
if (event && event.keyCode === 27) { if (event && event.keyCode === 27) {
console.log("Esc"); console.log("Esc");
$("#fullScreen").children("i").eq(0).removeClass("layui-icon-screen-restore"); $("#fullScreen").children("i").eq(0).removeClass("layui-icon-screen-restore");
} }
// 按 F11 // 按 F11
if (event && event.keyCode == 122) { if (event && event.keyCode == 122) {
console.log("F11"); console.log("F11");
$("#fullScreen").children("i").eq(0).addClass("layui-icon-screen-restore"); $("#fullScreen").children("i").eq(0).addClass("layui-icon-screen-restore");
} }
}); });
/** /**
* 全屏/退出全屏 * 全屏/退出全屏
*/ */
$("body").on("click", "#fullScreen", function () { $("body").on("click", "#fullScreen", function () {
if ($(this).children("i").hasClass("layui-icon-screen-restore")) { if ($(this).children("i").hasClass("layui-icon-screen-restore")) {
screenFun(2).then(function () { screenFun(2).then(function () {
$("#fullScreen").children("i").eq(0).removeClass("layui-icon-screen-restore"); $("#fullScreen").children("i").eq(0).removeClass("layui-icon-screen-restore");
}); });
} else { } else {
screenFun(1).then(function () { screenFun(1).then(function () {
$("#fullScreen").children("i").eq(0).addClass("layui-icon-screen-restore"); $("#fullScreen").children("i").eq(0).addClass("layui-icon-screen-restore");
}); });
} }
}); });
/** /**
* 全屏和退出全屏的方法 * 全屏和退出全屏的方法
* @param num 1代表全屏 2代表退出全屏 * @param num 1代表全屏 2代表退出全屏
* @returns {Promise} * @returns {Promise}
*/ */
function screenFun(num) { function screenFun(num) {
num = num || 1; num = num || 1;
num = num * 1; num = num * 1;
var docElm = document.documentElement; var docElm = document.documentElement;
switch (num) { switch (num) {
case 1: case 1:
if (docElm.requestFullscreen) { if (docElm.requestFullscreen) {
docElm.requestFullscreen(); docElm.requestFullscreen();
} else if (docElm.mozRequestFullScreen) { } else if (docElm.mozRequestFullScreen) {
docElm.mozRequestFullScreen(); docElm.mozRequestFullScreen();
} else if (docElm.webkitRequestFullScreen) { } else if (docElm.webkitRequestFullScreen) {
docElm.webkitRequestFullScreen(); docElm.webkitRequestFullScreen();
} else if (docElm.msRequestFullscreen) { } else if (docElm.msRequestFullscreen) {
docElm.msRequestFullscreen(); docElm.msRequestFullscreen();
} }
break; break;
case 2: case 2:
if (document.exitFullscreen) { if (document.exitFullscreen) {
document.exitFullscreen(); document.exitFullscreen();
} else if (document.mozCancelFullScreen) { } else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen(); document.mozCancelFullScreen();
} else if (document.webkitCancelFullScreen) { } else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen(); document.webkitCancelFullScreen();
} else if (document.msExitFullscreen) { } else if (document.msExitFullscreen) {
document.msExitFullscreen(); document.msExitFullscreen();
} }
break; break;
} }
return new Promise(function (res, rej) { return new Promise(function (res, rej) {
res("返回值"); res("返回值");
}); });
} }
/** /**
* 系统公告 * 系统公告
*/ */
$(document).on("click", "#notice", noticeFun); $(document).on("click", "#notice", noticeFun);
!function () { !function () {
var notice = sessionStorage.getItem("notice"); var notice = sessionStorage.getItem("notice");
if (notice != "true") { if (notice != "true") {
noticeFun(); noticeFun();
} }
}(); }();
function noticeFun() { function noticeFun() {
var srcWidth = okUtils.getBodyWidth(); var srcWidth = okUtils.getBodyWidth();
layer.open({ layer.open({
type: 0, title: "系统公告", btn: "我知道啦", btnAlign: 'c', content: okHoliday.getContent(), type: 0, title: "系统公告", btn: "我知道啦", btnAlign: 'c', content: okHoliday.getContent(),
yes: function (index) { yes: function (index) {
if (srcWidth > 800) { if (srcWidth > 800) {
layer.tips('公告跑到这里去啦', '#notice', { layer.tips('公告跑到这里去啦', '#notice', {
tips: [1, '#000'], tips: [1, '#000'],
time: 2000 time: 2000
}); });
} }
sessionStorage.setItem("notice", "true"); sessionStorage.setItem("notice", "true");
layer.close(index); layer.close(index);
}, },
cancel: function (index) { cancel: function (index) {
if (srcWidth > 800) { if (srcWidth > 800) {
layer.tips('公告跑到这里去啦', '#notice', { layer.tips('公告跑到这里去啦', '#notice', {
tips: [1, '#000'], tips: [1, '#000'],
time: 2000 time: 2000
}); });
} }
} }
}); });
} }
/** /**
* 捐赠作者 * 捐赠作者
*/ */
$(".layui-footer button.donate").click(function () { $(".layui-footer button.donate").click(function () {
layer.tab({ layer.tab({
area: ["330px", "350px"], area: ["330px", "350px"],
tab: [{ tab: [{
title: "支付宝", title: "支付宝",
content: "<img src='images/zfb.jpg' width='200' height='300' style='margin: 0 auto; display: block;'>" content: "<img src='images/zfb.jpg' width='200' height='300' style='margin: 0 auto; display: block;'>"
}, { }, {
title: "微信", title: "微信",
content: "<img src='images/wx.jpg' width='200' height='300' style='margin: 0 auto; display: block;'>" content: "<img src='images/wx.jpg' width='200' height='300' style='margin: 0 auto; display: block;'>"
}] }]
}); });
}); });
/** /**
* QQ群交流 * QQ群交流
*/ */
$("body").on("click", ".layui-footer button.communication, #noticeQQ", function () { $("body").on("click", ".layui-footer button.communication, #noticeQQ", function () {
layer.tab({ layer.tab({
area: ["auto", "370px"], area: ["auto", "370px"],
tab: [{ tab: [{
title: "QQ群4", title: "QQ群5",
content: "<img src='images/qq4.png' width='200' height='300' style='margin: 0 auto; display: block;'/>" content: "<img src='images/qq5.png' width='200' height='300' style='margin: 0 auto; display: block;'/>"
}, { },{
title: "QQ群3已满", title: "QQ群4已满",
content: "<img src='images/qq3.png' width='200' height='300' style='margin: 0 auto; display: block;'/>" content: "<img src='images/qq4.png' width='200' height='300' style='margin: 0 auto; display: block;'/>"
}, { }, {
title: "QQ群2已满", title: "QQ群3已满",
content: "<img src='images/qq2.png' width='200' height='300' style='margin: 0 auto; display: block;'/>" content: "<img src='images/qq3.png' width='200' height='300' style='margin: 0 auto; display: block;'/>"
}, { }, {
title: "QQ群1已满", title: "QQ群2已满",
content: "<img src='images/qq1.png' width='200' height='300' style='margin: 0 auto; display: block;'/>" content: "<img src='images/qq2.png' width='200' height='300' style='margin: 0 auto; display: block;'/>"
}] }, {
}); title: "QQ群1已满",
}); content: "<img src='images/qq1.png' width='200' height='300' style='margin: 0 auto; display: block;'/>"
}]
});
});
/** /**
* 弹窗皮肤 * 弹窗皮肤
*/ */
$("#alertSkin").click(function () { $("#alertSkin").click(function () {
okLayer.open("皮肤动画", "pages/system/alertSkin.html", "50%", "45%", function (layero) { okLayer.open("皮肤动画", "pages/system/alertSkin.html", "50%", "45%", function (layero) {
}, function () { }, function () {
}); });
}); });
/** /**
* 退出操作 * 退出操作
*/ */
$("#logout").click(function () { $("#logout").click(function () {
okLayer.confirm("确定要退出吗?", function (index) { okLayer.confirm("确定要退出吗?", function (index) {
okTab.removeTabStorage(function (res) { okTab.removeTabStorage(function (res) {
okTab.removeTabStorage(); okTab.removeTabStorage();
window.location = "pages/login.html"; window.location = "pages/login.html";
}); });
}); });
}); });
/** /**
* 锁定账户 * 锁定账户
*/ */
var lock_inter = ""; var lock_inter = "";
lockShowInit(okUtils); lockShowInit(okUtils);
$("#lock").click(function () { $("#lock").click(function () {
okLayer.confirm("确定要锁定账户吗?", function (index) { okLayer.confirm("确定要锁定账户吗?", function (index) {
layer.close(index); layer.close(index);
okUtils.local("isLock", '1');//设置锁屏缓存防止刷新失效 okUtils.local("isLock", '1');//设置锁屏缓存防止刷新失效
lockShowInit(okUtils);//锁屏 lockShowInit(okUtils);//锁屏
}); });
}); });
/**锁屏方法*/ /**锁屏方法*/
function lockShowInit(okUtils) { function lockShowInit(okUtils) {
let localLock = okUtils.local("isLock"); let localLock = okUtils.local("isLock");
$("#lockPassword").val(""); $("#lockPassword").val("");
if(!localLock){ if (!localLock) {
return; return;
} }
$(".lock-screen").show(); $(".lock-screen").show();
Snowflake("snowflake"); // 雪花 Snowflake("snowflake"); // 雪花
var lock_bgs = $(".lock-screen .lock-bg img"); var lock_bgs = $(".lock-screen .lock-bg img");
$(".lock-content .time .hhmmss").html(okUtils.dateFormat("", "hh <p lock='lock'>:</p> mm")); $(".lock-content .time .hhmmss").html(okUtils.dateFormat("", "hh <p lock='lock'>:</p> mm"));
$(".lock-content .time .yyyymmdd").html(okUtils.dateFormat("", "yyyy 年 M 月 dd 日")); $(".lock-content .time .yyyymmdd").html(okUtils.dateFormat("", "yyyy 年 M 月 dd 日"));
var i = 0, k = 0; var i = 0, k = 0;
lock_inter = setInterval(function () { lock_inter = setInterval(function () {
i++; i++;
if (i % 8 == 0) { if (i % 8 == 0) {
k = k + 1 >= lock_bgs.length ? 0 : k + 1; k = k + 1 >= lock_bgs.length ? 0 : k + 1;
i = 0; i = 0;
lock_bgs.removeClass("active"); lock_bgs.removeClass("active");
$(lock_bgs[k]).addClass("active"); $(lock_bgs[k]).addClass("active");
} }
$(".lock-content .time .hhmmss").html(okUtils.dateFormat("", "hh <p lock='lock'>:</p> mm")); $(".lock-content .time .hhmmss").html(okUtils.dateFormat("", "hh <p lock='lock'>:</p> mm"));
}, 1000); }, 1000);
//提交密码 //提交密码
form.on('submit(lockSubmit)', function (data) { form.on('submit(lockSubmit)', function (data) {
console.log(data); console.log(data);
if (data.field.lock_password !== "123456") { if (data.field.lock_password !== "123456") {
layer.msg("密码不正确", { layer.msg("密码不正确", {
icon: 5, icon: 5,
zIndex: 999999991 zIndex: 999999991
}); });
} else { } else {
layer.msg("密码输入正确", { layer.msg("密码输入正确", {
icon: 6, icon: 6,
zIndex: 999999992, zIndex: 999999992,
end: function () { end: function () {
okUtils.local("isLock", null); //清除锁屏的缓存 okUtils.local("isLock", null); //清除锁屏的缓存
$("#lockPassword").val(""); //清除输入框的密码 $("#lockPassword").val(""); //清除输入框的密码
$(".lock-screen").hide(); $(".lock-screen").hide();
clearInterval(lock_inter); clearInterval(lock_inter);
} }
}); });
} }
return false; return false;
}); });
//退出登录 //退出登录
$("#lockQuit").click(function () { $("#lockQuit").click(function () {
// window.location.href = "./pages/login.html"; // window.location.href = "./pages/login.html";
window.location.replace("./pages/login.html"); //替换当前页面 window.location.replace("./pages/login.html"); //替换当前页面
}); });
} }
console.log(" __ .___ .__ \n" + console.log(" __ .___ .__ \n" +
" ____ | | __ _____ __| _/_____ |__| ____ \n" + " ____ | | __ _____ __| _/_____ |__| ____ \n" +
" / _ \\| |/ / ______ \\__ \\ / __ |/ \\| |/ \\ \n" + " / _ \\| |/ / ______ \\__ \\ / __ |/ \\| |/ \\ \n" +
"( <_> ) < /_____/ / __ \\_/ /_/ | Y Y \\ | | \\\n" + "( <_> ) < /_____/ / __ \\_/ /_/ | Y Y \\ | | \\\n" +
" \\____/|__|_ \\ (____ /\\____ |__|_| /__|___| /\n" + " \\____/|__|_ \\ (____ /\\____ |__|_| /__|___| /\n" +
" \\/ \\/ \\/ \\/ \\/\n" + " \\/ \\/ \\/ \\/ \\/\n" +
"" + "" +
"版本v2.0\n" + "版本v2.0\n" +
"作者bobi\n" + "作者bobi\n" +
"邮箱bobi1234@foxmail.com\n" + "邮箱bobi1234@foxmail.com\n" +
"企鹅833539807\n" + "企鹅833539807\n" +
"描述:一个很赞的,扁平化风格的,响应式布局的后台管理模版,旨为后端程序员减压!"); "描述:一个很赞的,扁平化风格的,响应式布局的后台管理模版,旨为后端程序员减压!");
}); });