From 1b9ce9872c81e8de9a5feb22f7e41bbcdb04016a Mon Sep 17 00:00:00 2001 From: bobi Date: Fri, 17 May 2019 15:42:31 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=84=E8=8C=83=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../okLayer => okplugins}/okLayer.js | 0 .../okProgress/nprogress.css | 0 .../okProgress/nprogress.js | 0 .../okProgress/okProgress.js | 0 lib/{layui_plugins => okplugins}/okTab.js | 2 +- .../okUtils => okplugins}/okUtils.js | 0 .../treetable/treetable.css | 36 +- .../treetable/treetable.js | 412 +++++++++--------- pages/article/article-add.html | 6 +- pages/article/article-edit.html | 6 +- pages/article/article.html | 6 +- pages/permission/permission.html | 6 +- pages/role/role-add.html | 6 +- pages/role/role-edit.html | 6 +- pages/role/role.html | 6 +- pages/system/system-log.html | 6 +- pages/system/system-setting.html | 6 +- pages/test/okLayer.html | 4 +- pages/test/okProgress.html | 2 +- pages/use/use-okTab-sub.html | 66 +++ pages/use/use-okTab.html | 11 +- pages/user/login.html | 6 +- pages/user/user-add.html | 6 +- pages/user/user-edit.html | 6 +- pages/user/user.html | 6 +- pages/welcome.html | 2 +- 26 files changed, 343 insertions(+), 270 deletions(-) rename lib/{layui_plugins/okLayer => okplugins}/okLayer.js (100%) rename lib/{layui_plugins => okplugins}/okProgress/nprogress.css (100%) rename lib/{layui_plugins => okplugins}/okProgress/nprogress.js (100%) rename lib/{layui_plugins => okplugins}/okProgress/okProgress.js (100%) rename lib/{layui_plugins => okplugins}/okTab.js (95%) rename lib/{layui_plugins/okUtils => okplugins}/okUtils.js (100%) rename lib/{layui_plugins => okplugins}/treetable/treetable.css (94%) mode change 100755 => 100644 rename lib/{layui_plugins => okplugins}/treetable/treetable.js (97%) mode change 100755 => 100644 create mode 100644 pages/use/use-okTab-sub.html diff --git a/lib/layui_plugins/okLayer/okLayer.js b/lib/okplugins/okLayer.js similarity index 100% rename from lib/layui_plugins/okLayer/okLayer.js rename to lib/okplugins/okLayer.js diff --git a/lib/layui_plugins/okProgress/nprogress.css b/lib/okplugins/okProgress/nprogress.css similarity index 100% rename from lib/layui_plugins/okProgress/nprogress.css rename to lib/okplugins/okProgress/nprogress.css diff --git a/lib/layui_plugins/okProgress/nprogress.js b/lib/okplugins/okProgress/nprogress.js similarity index 100% rename from lib/layui_plugins/okProgress/nprogress.js rename to lib/okplugins/okProgress/nprogress.js diff --git a/lib/layui_plugins/okProgress/okProgress.js b/lib/okplugins/okProgress/okProgress.js similarity index 100% rename from lib/layui_plugins/okProgress/okProgress.js rename to lib/okplugins/okProgress/okProgress.js diff --git a/lib/layui_plugins/okTab.js b/lib/okplugins/okTab.js similarity index 95% rename from lib/layui_plugins/okTab.js rename to lib/okplugins/okTab.js index 0361cac..5c8f97a 100644 --- a/lib/layui_plugins/okTab.js +++ b/lib/okplugins/okTab.js @@ -1,6 +1,6 @@ "use strict"; layui.define(["element", "layer"], function (exports) { - var element = parent.layui.element; + var element = window.top.layui.element; var layer = layui.layer; var $ = layui.jquery; diff --git a/lib/layui_plugins/okUtils/okUtils.js b/lib/okplugins/okUtils.js similarity index 100% rename from lib/layui_plugins/okUtils/okUtils.js rename to lib/okplugins/okUtils.js diff --git a/lib/layui_plugins/treetable/treetable.css b/lib/okplugins/treetable/treetable.css old mode 100755 new mode 100644 similarity index 94% rename from lib/layui_plugins/treetable/treetable.css rename to lib/okplugins/treetable/treetable.css index a5eb1dd..584b2f8 --- a/lib/layui_plugins/treetable/treetable.css +++ b/lib/okplugins/treetable/treetable.css @@ -1,18 +1,18 @@ -.treeTable-empty { - width: 20px; - display: inline-block; -} - -.treeTable-icon { - cursor: pointer; -} - -.treeTable-icon .layui-icon-triangle-d:before { - content: "\e623"; -} - -.treeTable-icon.open .layui-icon-triangle-d:before { - content: "\e625"; - background-color: transparent; -} - +.treeTable-empty { + width: 20px; + display: inline-block; +} + +.treeTable-icon { + cursor: pointer; +} + +.treeTable-icon .layui-icon-triangle-d:before { + content: "\e623"; +} + +.treeTable-icon.open .layui-icon-triangle-d:before { + content: "\e625"; + background-color: transparent; +} + diff --git a/lib/layui_plugins/treetable/treetable.js b/lib/okplugins/treetable/treetable.js old mode 100755 new mode 100644 similarity index 97% rename from lib/layui_plugins/treetable/treetable.js rename to lib/okplugins/treetable/treetable.js index 1940bdc..3e28568 --- a/lib/layui_plugins/treetable/treetable.js +++ b/lib/okplugins/treetable/treetable.js @@ -1,206 +1,206 @@ -layui.define(['layer', 'table'], function (exports) { - var $ = layui.jquery; - var layer = layui.layer; - var table = layui.table; - - var treetable = { - // 渲染树形表格 - render: function (param) { - // 检查参数 - if (!treetable.checkParam(param)) { - return; - } - // 获取数据 - if (param.data) { - treetable.init(param, param.data); - } else { - $.getJSON(param.url, param.where, function (res) { - treetable.init(param, res.data); - }); - } - }, - // 渲染表格 - init: function (param, data) { - var mData = []; - var doneCallback = param.done; - var tNodes = data; - // 补上id和pid字段 - for (var i = 0; i < tNodes.length; i++) { - var tt = tNodes[i]; - if (!tt.id) { - if (!param.treeIdName) { - layer.msg('参数treeIdName不能为空', {icon: 5}); - return; - } - tt.id = tt[param.treeIdName]; - } - if (!tt.pid) { - if (!param.treePidName) { - layer.msg('参数treePidName不能为空', {icon: 5}); - return; - } - tt.pid = tt[param.treePidName]; - } - } - - // 对数据进行排序 - var sort = function (s_pid, data) { - for (var i = 0; i < data.length; i++) { - if (data[i].pid == s_pid) { - var len = mData.length; - if (len > 0 && mData[len - 1].id == s_pid) { - mData[len - 1].isParent = true; - } - mData.push(data[i]); - sort(data[i].id, data); - } - } - }; - sort(param.treeSpid, tNodes); - - // 重写参数 - param.url = undefined; - param.data = mData; - param.page = { - count: param.data.length, - limit: param.data.length - }; - param.cols[0][param.treeColIndex].templet = function (d) { - var mId = d.id; - var mPid = d.pid; - var isDir = d.isParent; - var emptyNum = treetable.getEmptyNum(mPid, mData); - var iconHtml = ''; - for (var i = 0; i < emptyNum; i++) { - iconHtml += ''; - } - if (isDir) { - iconHtml += ' '; - } else { - iconHtml += ''; - } - iconHtml += '  '; - var ttype = isDir ? 'dir' : 'file'; - var vg = ''; - return vg + iconHtml + d[param.cols[0][param.treeColIndex].field] + '' - }; - - param.done = function (res, curr, count) { - $(param.elem).next().addClass('treeTable'); - $('.treeTable .layui-table-page').css('display', 'none'); - $(param.elem).next().attr('treeLinkage', param.treeLinkage); - // 绑定事件换成对body绑定 - /*$('.treeTable .treeTable-icon').click(function () { - treetable.toggleRows($(this), param.treeLinkage); - });*/ - if (param.treeDefaultClose) { - treetable.foldAll(param.elem); - } - if (doneCallback) { - doneCallback(res, curr, count); - } - }; - - // 渲染表格 - table.render(param); - }, - // 计算缩进的数量 - getEmptyNum: function (pid, data) { - var num = 0; - if (!pid) { - return num; - } - var tPid; - for (var i = 0; i < data.length; i++) { - if (pid == data[i].id) { - num += 1; - tPid = data[i].pid; - break; - } - } - return num + treetable.getEmptyNum(tPid, data); - }, - // 展开/折叠行 - toggleRows: function ($dom, linkage) { - var type = $dom.attr('lay-ttype'); - if ('file' == type) { - return; - } - var mId = $dom.attr('lay-tid'); - var isOpen = $dom.hasClass('open'); - if (isOpen) { - $dom.removeClass('open'); - } else { - $dom.addClass('open'); - } - $dom.closest('tbody').find('tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var pid = $ti.attr('lay-tpid'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if (mId == pid) { - if (isOpen) { - $(this).hide(); - if ('dir' == ttype && tOpen == isOpen) { - $ti.trigger('click'); - } - } else { - $(this).show(); - if (linkage && 'dir' == ttype && tOpen == isOpen) { - $ti.trigger('click'); - } - } - } - }); - }, - // 检查参数 - checkParam: function (param) { - if (!param.treeSpid && param.treeSpid != 0) { - layer.msg('参数treeSpid不能为空', {icon: 5}); - return false; - } - - if (!param.treeColIndex && param.treeColIndex != 0) { - layer.msg('参数treeColIndex不能为空', {icon: 5}); - return false; - } - return true; - }, - // 展开所有 - expandAll: function (dom) { - $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if ('dir' == ttype && !tOpen) { - $ti.trigger('click'); - } - }); - }, - // 折叠所有 - foldAll: function (dom) { - $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { - var $ti = $(this).find('.treeTable-icon'); - var ttype = $ti.attr('lay-ttype'); - var tOpen = $ti.hasClass('open'); - if ('dir' == ttype && tOpen) { - $ti.trigger('click'); - } - }); - } - }; - - layui.link(layui.cache.base + 'treetable/treetable.css'); - - // 给图标列绑定事件 - $('body').on('click', '.treeTable .treeTable-icon', function () { - var treeLinkage = $(this).parents('.treeTable').attr('treeLinkage'); - if ('true' == treeLinkage) { - treetable.toggleRows($(this), true); - } else { - treetable.toggleRows($(this), false); - } - }); - - exports('treetable', treetable); -}); +layui.define(['layer', 'table'], function (exports) { + var $ = layui.jquery; + var layer = layui.layer; + var table = layui.table; + + var treetable = { + // 渲染树形表格 + render: function (param) { + // 检查参数 + if (!treetable.checkParam(param)) { + return; + } + // 获取数据 + if (param.data) { + treetable.init(param, param.data); + } else { + $.getJSON(param.url, param.where, function (res) { + treetable.init(param, res.data); + }); + } + }, + // 渲染表格 + init: function (param, data) { + var mData = []; + var doneCallback = param.done; + var tNodes = data; + // 补上id和pid字段 + for (var i = 0; i < tNodes.length; i++) { + var tt = tNodes[i]; + if (!tt.id) { + if (!param.treeIdName) { + layer.msg('参数treeIdName不能为空', {icon: 5}); + return; + } + tt.id = tt[param.treeIdName]; + } + if (!tt.pid) { + if (!param.treePidName) { + layer.msg('参数treePidName不能为空', {icon: 5}); + return; + } + tt.pid = tt[param.treePidName]; + } + } + + // 对数据进行排序 + var sort = function (s_pid, data) { + for (var i = 0; i < data.length; i++) { + if (data[i].pid == s_pid) { + var len = mData.length; + if (len > 0 && mData[len - 1].id == s_pid) { + mData[len - 1].isParent = true; + } + mData.push(data[i]); + sort(data[i].id, data); + } + } + }; + sort(param.treeSpid, tNodes); + + // 重写参数 + param.url = undefined; + param.data = mData; + param.page = { + count: param.data.length, + limit: param.data.length + }; + param.cols[0][param.treeColIndex].templet = function (d) { + var mId = d.id; + var mPid = d.pid; + var isDir = d.isParent; + var emptyNum = treetable.getEmptyNum(mPid, mData); + var iconHtml = ''; + for (var i = 0; i < emptyNum; i++) { + iconHtml += ''; + } + if (isDir) { + iconHtml += ' '; + } else { + iconHtml += ''; + } + iconHtml += '  '; + var ttype = isDir ? 'dir' : 'file'; + var vg = ''; + return vg + iconHtml + d[param.cols[0][param.treeColIndex].field] + '' + }; + + param.done = function (res, curr, count) { + $(param.elem).next().addClass('treeTable'); + $('.treeTable .layui-table-page').css('display', 'none'); + $(param.elem).next().attr('treeLinkage', param.treeLinkage); + // 绑定事件换成对body绑定 + /*$('.treeTable .treeTable-icon').click(function () { + treetable.toggleRows($(this), param.treeLinkage); + });*/ + if (param.treeDefaultClose) { + treetable.foldAll(param.elem); + } + if (doneCallback) { + doneCallback(res, curr, count); + } + }; + + // 渲染表格 + table.render(param); + }, + // 计算缩进的数量 + getEmptyNum: function (pid, data) { + var num = 0; + if (!pid) { + return num; + } + var tPid; + for (var i = 0; i < data.length; i++) { + if (pid == data[i].id) { + num += 1; + tPid = data[i].pid; + break; + } + } + return num + treetable.getEmptyNum(tPid, data); + }, + // 展开/折叠行 + toggleRows: function ($dom, linkage) { + var type = $dom.attr('lay-ttype'); + if ('file' == type) { + return; + } + var mId = $dom.attr('lay-tid'); + var isOpen = $dom.hasClass('open'); + if (isOpen) { + $dom.removeClass('open'); + } else { + $dom.addClass('open'); + } + $dom.closest('tbody').find('tr').each(function () { + var $ti = $(this).find('.treeTable-icon'); + var pid = $ti.attr('lay-tpid'); + var ttype = $ti.attr('lay-ttype'); + var tOpen = $ti.hasClass('open'); + if (mId == pid) { + if (isOpen) { + $(this).hide(); + if ('dir' == ttype && tOpen == isOpen) { + $ti.trigger('click'); + } + } else { + $(this).show(); + if (linkage && 'dir' == ttype && tOpen == isOpen) { + $ti.trigger('click'); + } + } + } + }); + }, + // 检查参数 + checkParam: function (param) { + if (!param.treeSpid && param.treeSpid != 0) { + layer.msg('参数treeSpid不能为空', {icon: 5}); + return false; + } + + if (!param.treeColIndex && param.treeColIndex != 0) { + layer.msg('参数treeColIndex不能为空', {icon: 5}); + return false; + } + return true; + }, + // 展开所有 + expandAll: function (dom) { + $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { + var $ti = $(this).find('.treeTable-icon'); + var ttype = $ti.attr('lay-ttype'); + var tOpen = $ti.hasClass('open'); + if ('dir' == ttype && !tOpen) { + $ti.trigger('click'); + } + }); + }, + // 折叠所有 + foldAll: function (dom) { + $(dom).next('.treeTable').find('.layui-table-body tbody tr').each(function () { + var $ti = $(this).find('.treeTable-icon'); + var ttype = $ti.attr('lay-ttype'); + var tOpen = $ti.hasClass('open'); + if ('dir' == ttype && tOpen) { + $ti.trigger('click'); + } + }); + } + }; + + layui.link(layui.cache.base + 'treetable/treetable.css'); + + // 给图标列绑定事件 + $('body').on('click', '.treeTable .treeTable-icon', function () { + var treeLinkage = $(this).parents('.treeTable').attr('treeLinkage'); + if ('true' == treeLinkage) { + treetable.toggleRows($(this), true); + } else { + treetable.toggleRows($(this), false); + } + }); + + exports('treetable', treetable); +}); diff --git a/pages/article/article-add.html b/pages/article/article-add.html index aa27d8a..197b29c 100644 --- a/pages/article/article-add.html +++ b/pages/article/article-add.html @@ -75,10 +75,10 @@ + + + diff --git a/pages/use/use-okTab.html b/pages/use/use-okTab.html index c07b0a2..f311c38 100644 --- a/pages/use/use-okTab.html +++ b/pages/use/use-okTab.html @@ -67,17 +67,20 @@ okTab.tabAdd("ok-tool", "http://www.xlbweb.cn", "11-1") + diff --git a/pages/user/login.html b/pages/user/login.html index 01caf80..eed797f 100644 --- a/pages/user/login.html +++ b/pages/user/login.html @@ -39,10 +39,10 @@