抽取okMenu
parent
dac9be277f
commit
233ed2f4a8
148
js/okadmin.js
148
js/okadmin.js
|
|
@ -2,13 +2,15 @@ layui.config({
|
|||
base: "lib/okPlugins/"
|
||||
}).extend({
|
||||
okTab: "okTab",
|
||||
okUtils: "okUtils"
|
||||
}).use(["element", "layer", "okTab", "okUtils"], function () {
|
||||
okUtils: "okUtils",
|
||||
okMenu: "okMenu"
|
||||
}).use(["element", "layer", "okTab", "okUtils", "okMenu"], function () {
|
||||
var element = layui.element;
|
||||
var layer = layui.layer;
|
||||
var $ = layui.jquery;
|
||||
var okTab = layui.okTab;
|
||||
var okUtils = layui.okUtils;
|
||||
var okMenu = layui.okMenu;
|
||||
|
||||
/**
|
||||
* localhost运行提示
|
||||
|
|
@ -34,78 +36,82 @@ layui.config({
|
|||
}
|
||||
});
|
||||
|
||||
// TODO 无限级菜单
|
||||
okUtils.ajax("data/menu.json", "get").done(function (response) {
|
||||
var html = "";
|
||||
for (var i = 0; i < response.length; i++) {
|
||||
var d = response[i];
|
||||
html += liHtml(d);
|
||||
html += "<a href='javascript:;'>"
|
||||
html += iconHtml(d) + " " + response[i].title;
|
||||
html += "</a>"
|
||||
// var children = d.children;
|
||||
// if (children != undefined && children.length > 0) {
|
||||
// html += "<dl class='layui-nav-child'>"
|
||||
// for (var j = 0; j < children.length; j++) {
|
||||
// html += "<dd>";
|
||||
// html += "<a href='javascript:;' path='" + children[j].path + "'>" + iconHtml(children[j]) + " " + children[j].title + "</a>";
|
||||
// html += "</dd>";
|
||||
// }
|
||||
// html += "</dl>"
|
||||
// }
|
||||
var temp = createMenu(d.children);
|
||||
html += temp;
|
||||
html += "</li>";
|
||||
}
|
||||
$(".layui-nav-tree").html(html);
|
||||
element.render("nav");
|
||||
}).fail(function (error) {
|
||||
console.log(error)
|
||||
});
|
||||
/**
|
||||
* 生成左侧菜单树
|
||||
*/
|
||||
okMenu.generatorMenu("data/menu.json", "get");
|
||||
|
||||
function liHtml(obj) {
|
||||
var html = "";
|
||||
if (obj.spread) {
|
||||
html += "<li class='layui-nav-item layui-nav-itemed'>";
|
||||
} else {
|
||||
html += "<li class='layui-nav-item'>";
|
||||
}
|
||||
return html;
|
||||
}
|
||||
// okUtils.ajax("data/menu.json", "get").done(function (response) {
|
||||
// var html = "";
|
||||
// for (var i = 0; i < response.length; i++) {
|
||||
// var d = response[i];
|
||||
// html += liHtml(d);
|
||||
// html += "<a href='javascript:;'>"
|
||||
// html += iconHtml(d) + " " + response[i].title;
|
||||
// html += "</a>"
|
||||
// // var children = d.children;
|
||||
// // if (children != undefined && children.length > 0) {
|
||||
// // html += "<dl class='layui-nav-child'>"
|
||||
// // for (var j = 0; j < children.length; j++) {
|
||||
// // html += "<dd>";
|
||||
// // html += "<a href='javascript:;' path='" + children[j].path + "'>" + iconHtml(children[j]) + " " + children[j].title + "</a>";
|
||||
// // html += "</dd>";
|
||||
// // }
|
||||
// // html += "</dl>"
|
||||
// // }
|
||||
// var temp = createMenu(d.children);
|
||||
// html += temp;
|
||||
// html += "</li>";
|
||||
// }
|
||||
// $(".layui-nav-tree").html(html);
|
||||
// element.render("nav");
|
||||
// }).fail(function (error) {
|
||||
// console.log(error)
|
||||
// });
|
||||
|
||||
function iconHtml(obj) {
|
||||
var html = "";
|
||||
if (obj.icon) {
|
||||
if (obj.font == "iconfont") {
|
||||
html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
} else if (obj.font == "layui-icon") {
|
||||
html += "<i class='layui-icon'> " + obj.icon + "</i>";
|
||||
} else {
|
||||
html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
}
|
||||
} else {
|
||||
console.warn(obj.title, "icon未定义");
|
||||
}
|
||||
return html;
|
||||
}
|
||||
// function liHtml(obj) {
|
||||
// var html = "";
|
||||
// if (obj.spread) {
|
||||
// html += "<li class='layui-nav-item layui-nav-itemed'>";
|
||||
// } else {
|
||||
// html += "<li class='layui-nav-item'>";
|
||||
// }
|
||||
// return html;
|
||||
// }
|
||||
|
||||
function createMenu(obj) {
|
||||
var html = "";
|
||||
if (obj != undefined && obj.length > 0) {
|
||||
html += "<dl class='layui-nav-child'>"
|
||||
for (var i = 0; i < obj.length; i++) {
|
||||
html += "<dd>";
|
||||
html += "<a href='javascript:;' path='" + obj[i].path + "'>" + iconHtml(obj[i]) + " " + obj[i].title + "</a>";
|
||||
var children = obj[i].children;
|
||||
if (children != undefined && children.length > 0) {
|
||||
html += createMenu(children);
|
||||
}
|
||||
html += "</dd>";
|
||||
}
|
||||
html += "</dl>"
|
||||
}
|
||||
return html;
|
||||
}
|
||||
// function iconHtml(obj) {
|
||||
// var html = "";
|
||||
// if (obj.icon) {
|
||||
// if (obj.font == "iconfont") {
|
||||
// html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
// } else if (obj.font == "layui-icon") {
|
||||
// html += "<i class='layui-icon'> " + obj.icon + "</i>";
|
||||
// } else {
|
||||
// html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
// }
|
||||
// } else {
|
||||
// console.warn(obj.title, "icon未定义");
|
||||
// }
|
||||
// return html;
|
||||
// }
|
||||
|
||||
// function createMenu(obj) {
|
||||
// var html = "";
|
||||
// if (obj != undefined && obj.length > 0) {
|
||||
// html += "<dl class='layui-nav-child'>"
|
||||
// for (var i = 0; i < obj.length; i++) {
|
||||
// html += "<dd>";
|
||||
// html += "<a href='javascript:;' path='" + obj[i].path + "'>" + iconHtml(obj[i]) + " " + obj[i].title + "</a>";
|
||||
// var children = obj[i].children;
|
||||
// if (children != undefined && children.length > 0) {
|
||||
// html += createMenu(children);
|
||||
// }
|
||||
// html += "</dd>";
|
||||
// }
|
||||
// html += "</dl>"
|
||||
// }
|
||||
// return html;
|
||||
// }
|
||||
|
||||
/**
|
||||
* 监听导航菜单的点击
|
||||
|
|
|
|||
|
|
@ -4,7 +4,68 @@ layui.define(["element", "okUtils"], function (exports) {
|
|||
var okUtils = layui.okUtils;
|
||||
var $ = layui.jquery;
|
||||
|
||||
var okMenu = {}
|
||||
var okMenu = {
|
||||
generatorMenu: function (url, method) {
|
||||
okUtils.ajax(url, method).done(function (response) {
|
||||
var html = "";
|
||||
for (var i = 0; i < response.length; i++) {
|
||||
var d = response[i];
|
||||
html += okMenu.liHtml(d);
|
||||
html += "<a href='javascript:;'>"
|
||||
html += okMenu.iconHtml(d) + " " + response[i].title;
|
||||
html += "</a>"
|
||||
var temp = okMenu.createMenu(d.children);
|
||||
html += temp;
|
||||
html += "</li>";
|
||||
}
|
||||
$(".layui-nav-tree").html(html);
|
||||
element.render("nav");
|
||||
}).fail(function (error) {
|
||||
console.log(error)
|
||||
});
|
||||
},
|
||||
liHtml: function (obj) {
|
||||
var html = "";
|
||||
if (obj.spread) {
|
||||
html += "<li class='layui-nav-item layui-nav-itemed'>";
|
||||
} else {
|
||||
html += "<li class='layui-nav-item'>";
|
||||
}
|
||||
return html;
|
||||
},
|
||||
iconHtml: function (obj) {
|
||||
var html = "";
|
||||
if (obj.icon) {
|
||||
if (obj.font == "iconfont") {
|
||||
html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
} else if (obj.font == "layui-icon") {
|
||||
html += "<i class='layui-icon'> " + obj.icon + "</i>";
|
||||
} else {
|
||||
html += "<i class='iconfont'>" + obj.icon + "</i>";
|
||||
}
|
||||
} else {
|
||||
console.warn(obj.title, "icon未定义");
|
||||
}
|
||||
return html;
|
||||
},
|
||||
createMenu: function (obj) {
|
||||
var html = "";
|
||||
if (obj != undefined && obj.length > 0) {
|
||||
html += "<dl class='layui-nav-child'>"
|
||||
for (var i = 0; i < obj.length; i++) {
|
||||
html += "<dd>";
|
||||
html += "<a href='javascript:;' path='" + obj[i].path + "'>" + okMenu.iconHtml(obj[i]) + " " + obj[i].title + "</a>";
|
||||
var children = obj[i].children;
|
||||
if (children != undefined && children.length > 0) {
|
||||
html += okMenu.createMenu(children);
|
||||
}
|
||||
html += "</dd>";
|
||||
}
|
||||
html += "</dl>"
|
||||
}
|
||||
return html;
|
||||
}
|
||||
}
|
||||
|
||||
exports("okMenu", okMenu);
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue