整理代码

develop
就眠仪式 2020-08-04 20:31:05 +08:00
parent 7bd1f5eceb
commit 67a8790b95
3 changed files with 9 additions and 110 deletions

View File

@ -45,8 +45,8 @@ layui.define(['table', 'jquery', 'element', 'form', 'tab', 'menu', 'frame'],
sideMenu.selectItem(param.menu.select);
}
this.bodyRender = function(option) {
if (option.tab.muiltTab) {
this.bodyRender = function(param) {
if (param.tab.muiltTab) {
bodyTab = pearTab.render({
elem: 'content',
roll: true,
@ -54,20 +54,20 @@ layui.define(['table', 'jquery', 'element', 'form', 'tab', 'menu', 'frame'],
width: '100%',
height: '100%',
index: 0,
tabMax: option.tab.tabMax,
tabMax: param.tab.tabMax,
closeEvent: function(id) {
sideMenu.selectItem(id);
},
data: [{
id: option.tab.index.id,
url: option.tab.index.href,
title: option.tab.index.title,
id: param.tab.index.id,
url: param.tab.index.href,
title: param.tab.index.title,
close: false
}]
});
bodyTab.click(function(id) {
// 选 项 卡 切 换 刷 新
if(!option.tab.keepState){
if(!param.tab.keepState){
bodyTab.refresh(false);
}
bodyTab.positionTab();
@ -89,7 +89,6 @@ layui.define(['table', 'jquery', 'element', 'form', 'tab', 'menu', 'frame'],
}, 600)
})
sideMenu.click(function(dom, data) {
bodyTab.addTabOnly({
id: data.menuId,
title: data.menuTitle,

View File

@ -47,8 +47,6 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
}
}
// 渲 染 菜 单 结 束 并 完 成
element.init();
downShow(option);
@ -57,8 +55,6 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
return new pearMenu(option);
}
/** 监听事件赋值 */
pearMenu.prototype.click = function(clickEvent) {
var _this = this;
@ -76,36 +72,26 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
if (doms.text() != '') {
data['menuPath'] = doms.find("span").text() + " / " + data['menuPath'];
}
var domss = hash(doms);
if (domss.text() != '') {
data['menuPath'] = domss.find("span").text() + " / " + data['menuPath'];
}
var domsss = hash(domss);
if (domsss.text() != '') {
data['menuPath'] = domsss.find("span").text() + " / " + data['menuPath'];
}
clickEvent(dom, data);
});
}
function hash(dom) {
return dom.parent().parent().prev();
}
pearMenu.prototype.skin = function(skin) {
var menu = $(".pear-nav-tree[lay-filter='" + this.option.elem + "']").parent();
menu.removeClass("dark-theme");
menu.removeClass("light-theme");
menu.addClass(skin);
@ -115,28 +101,20 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
pearMenu.prototype.selectItem = function(pearId) {
if (this.option.control != false) {
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents(".layui-side-scroll ").find("ul").css({
display: "none"
});
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents(".layui-side-scroll ").find(".layui-this").removeClass(
"layui-this");
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents("ul").css({
display: "block"
});
var controlId = $("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents("ul").attr("pear-id");
$("#" + this.option.control).find(".layui-this").removeClass("layui-this");
$("#" + this.option.control).find("[pear-id='" + controlId + "']").addClass("layui-this");
}
// 根 据 菜 单 Id 选 中 菜 单 项 目
if (this.option.accordion == true) {
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents(".pear-nav-tree").find(".layui-nav-itemed").removeClass(
"layui-nav-itemed");
@ -145,14 +123,9 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents(".pear-nav-tree").find(".layui-this").removeClass(
"layui-this");
// 通 过 动 画 打 开 当 前 菜 单 项 layui-nav-child
if (!$("#" + this.option.elem).is(".pear-nav-mini")) {
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents(".layui-nav-item").addClass("layui-nav-itemed");
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parents("dd").addClass("layui-nav-itemed");
}
$("#" + this.option.elem + " a[menu-id='" + pearId + "']").parent().addClass("layui-this");
@ -164,30 +137,21 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
pearMenu.prototype.collaspe = function(time) {
var elem = this.option.elem;
var config = this.option;
if ($("#" + this.option.elem).is(".pear-nav-mini")) {
$.each(activeMenus, function(i, item) {
$("#" + elem + " a[menu-id='" + $(this).attr("menu-id") + "']").parent().addClass("layui-nav-itemed");
})
$("#" + this.option.elem).removeClass("pear-nav-mini");
$("#" + this.option.elem).animate({
width: "220px"
}, 150);
isHoverMenu(false, config);
} else {
activeMenus = $("#" + this.option.elem).find(".layui-nav-itemed>a");
$("#" + this.option.elem).find(".layui-nav-itemed").removeClass("layui-nav-itemed");
$("#" + this.option.elem).addClass("pear-nav-mini");
$("#" + this.option.elem).animate({
width: "60px"
}, 400);
@ -198,52 +162,38 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
/** 同 步 请 求 获 取 数 据 */
function getData(url) {
$.ajaxSettings.async = false;
var data = null;
$.get(url+"?fresh=" + Math.random(), function(result) {
data = result;
});
$.ajaxSettings.async = true;
return data;
}
function createMenu(option) {
// 声 明 头 部
var menuHtml = '<ul lay-filter="' + option.elem +
'" class="layui-nav arrow pear-menu layui-nav-tree pear-nav-tree">'
// 开 启 同 步 操 作
$.each(option.data, function(i, item) {
// 创 建 每 一 个 菜 单 项
var content = '<li class="layui-nav-item" >';
if (i == option.defaultOpen) {
content = '<li class="layui-nav-item layui-nav-itemed" >';
}
var href = "javascript:;";
var target = "";
var className = "site-demo-active"
if (item.openType == "_blank" && item.type == 1) {
href = item.href;
target = "target='_blank'";
className = "";
}
// 判 断 菜 单 类 型 0 是 不可跳转的目录 1 是 可 点 击 跳 转 的 菜 单
if (item.type == 0) {
// 创 建 目 录 结 构
content += '<a href="javascript:;" menu-type="' + item.type + '" menu-id="' + item.id + '" href="' + href +
'" ' + target + '><i class="' + item.icon + '"></i><span>' + item.title +
'</span></a>';
} else if (item.type == 1) {
// 创 建 菜 单 结 构
content += '<a class="' + className + '" menu-type="' + item.type + '" menu-url="' + item.href + '" menu-id="' +
item.id +
'" menu-title="' + item.title + '" href="' + href + '" ' + target + '><i class="' + item.icon +
@ -254,72 +204,46 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
// 结 束 一 个 根 菜 单 项
content += '</li>';
menuHtml += content;
});
// 结 束 菜 单 结 构 的 初 始 化
menuHtml += "</ul>";
// 将 菜 单 拼 接 到 初 始 化 容 器 中
$("#" + option.elem).html(menuHtml);
}
function createMenuAndControl(option) {
var control = '<ul class="layui-nav pear-nav-control">';
// 声 明 头 部
var menu = '<div class="layui-side-scroll ' + option.theme + '">'
// 开 启 同 步 操 作
var index = 0;
$.each(option.data, function(i, item) {
var menuItem = '';
var controlItem = '';
if (index === option.defaultMenu) {
controlItem = '<li pear-href="' + item.href + '" pear-title="' + item.title + '" pear-id="' + item.id +
'" class="layui-this layui-nav-item"><a href="#">' + item.title + '</a></li>';
menuItem = '<ul pear-id="' + item.id + '" lay-filter="' + option.elem +
'" class="layui-nav arrow layui-nav-tree pear-nav-tree">';
} else {
controlItem = '<li pear-href="' + item.href + '" pear-title="' + item.title + '" pear-id="' + item.id +
'" class="layui-nav-item"><a href="#">' + item.title + '</a></li>';
menuItem = '<ul style="display:none" pear-id="' + item.id + '" lay-filter="' + option.elem +
'" class="layui-nav arrow layui-nav-tree pear-nav-tree">';
}
index++;
$.each(item.children, function(i, note) {
// 创 建 每 一 个 菜 单 项
var content = '<li class="layui-nav-item" >';
var href = "javascript:;";
var target = "";
var className = "site-demo-active";
if (note.openType == "_blank" && note.type == 1) {
href = note.href;
target = "target='_blank'";
className = "";
}
// 判 断 菜 单 类 型 0 是 不可跳转的目录 1 是 可 点 击 跳 转 的 菜 单
if (note.type == 0) {
// 创 建 目 录 结 构
@ -333,72 +257,50 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
'" menu-title="' + note.title + '" href="' + href + '"><i class="' + note.icon +
'"></i><span>' + note.title + '</span></a>';
}
// 调 用 递 归 方 法 加 载 无 限 层 级 的 子 菜 单
content += loadchild(note);
// 结 束 一 个 根 菜 单 项
content += '</li>';
menuItem += content;
})
menu += menuItem + '</ul>';
control += controlItem;
})
$("#" + option.control).html(control);
$("#" + option.elem).html(menu);
$("#" + option.control + " .pear-nav-control").on("click", "li", function() {
$("#" + option.elem).find(".pear-nav-tree").css({
display: 'none'
});
$("#" + option.elem).find(".pear-nav-tree[pear-id='" + $(this).attr("pear-id") + "']").css({
display: 'block'
});
option.change($(this).attr("pear-id"), $(this).attr("pear-title"), $(this).attr("pear-href"))
})
}
/** 加载子菜单 (递归)*/
function loadchild(obj) {
// 判 单 是 否 是 菜 单, 如 果 是 菜 单 直 接 返 回
if (obj.type == 1) {
return "";
}
// 创 建 子 菜 单 结 构
var content = '<dl class="layui-nav-child">';
// 如 果 嵌 套 不 等 于 空
if (obj.children != null && obj.children.length > 0) {
// 遍 历 子 项 目
$.each(obj.children, function(i, note) {
// 创 建 子 项 结 构
content += '<dd>';
var href = "javascript:;";
var target = "";
var className = "site-demo-active";
if (note.openType == "_blank" && note.type == 1) {
href = note.href;
target = "target='_blank'";
className = "";
}
// 判 断 子 项 类 型
if (note.type == 0) {
// 创 建 目 录 结 构
@ -416,11 +318,9 @@ layui.define(['table', 'jquery', 'element'], function(exports) {
content += '</dd>';
});
// 封 装
} else {
content += '<div class="toast"> 无 内 容 </div>';
}
content += '</dl>';
return content;
}

View File

@ -132,7 +132,7 @@
<div class="layui-card-body">
<ul class="pear-card-status">
<li>
<h3>就眠仪式</h3>
<h3>Pear Admin</h3>
<p>快乐的时候不敢尽兴,频繁警戒自己保持清醒。</p>
<span>4月30日 22:43</span>
<a href="javascript:;" data-id="1" class="pear-btn pear-btn-xs pear-btn-success pear-reply">回复</a>
@ -150,7 +150,7 @@
<a href="javascript:;" data-id="1" class="pear-btn pear-btn-xs pear-btn-success pear-reply">回复</a>
</li>
<li>
<h3>Pear Admin</h3>
<h3>BootStrap</h3>
<p>当浑浊变成了一种常态,那么清白就成了一种罪过。</p>
<span>4月30日 22:43</span>
<a href="javascript:;" data-id="1" class="pear-btn pear-btn-xs pear-btn-success pear-reply">回复</a>