调试菜单状态问题

This commit is contained in:
BianLzhaoMin 2025-02-19 14:57:33 +08:00
parent ce23f8933e
commit af5087aba8
2 changed files with 196 additions and 181 deletions

View File

@ -1,4 +1,16 @@
initMenu();
function getIsCheckFun(list) {
if (list && list.length > 0) {
list.forEach((e) => {
if (e.isCheck == 1) {
console.log("有待审数据", e);
}
if (e.child && e.child.length > 0) {
getIsCheckFun(e.child);
}
});
}
}
function initMenu() {
$.ajax({
url: ctxPath + "/permissions/current",
@ -6,7 +18,7 @@ function initMenu(){
async: false,
success: function (data) {
if (!$.isArray(data)) {
location.href=ctxPath + '/login.html';
location.href = ctxPath + "/login.html";
return;
}
var menu = $("#menu");
@ -15,7 +27,9 @@ function initMenu(){
var css = item.css;
if (css != null && css != "") {
a.append("<i aria-hidden='true' class='fa " + css +"'></i>");
a.append(
"<i aria-hidden='true' class='fa " + css + "'></i>"
);
}
a.append("<cite>" + item.name + "</cite>");
a.attr("lay-id", item.id);
@ -33,10 +47,11 @@ function initMenu(){
menu.append(li);
//多级菜单
setChild(li, item.child)
setChild(li, item.child);
});
}
// 递归获取菜单状态
getIsCheckFun(data);
},
});
}
@ -72,8 +87,8 @@ function setChild(parentElement, child){
showLoginInfo();
function showLoginInfo() {
$.ajax({
type : 'get',
url : ctxPath + '/users/current',
type: "get",
url: ctxPath + "/users/current",
async: false,
success: function (data) {
$(".admin-header-user span").text(data.nickname);
@ -97,28 +112,28 @@ function showLoginInfo(){
}
var img = $(".admin-header-user img");
img.attr("src", url);
}
},
});
}
function logout() {
$.ajax({
type : 'get',
url : ctxPath + '/logout',
type: "get",
url: ctxPath + "/logout",
success: function (data) {
localStorage.removeItem("token");
location.href= ctxPath + '/login.html';
}
location.href = ctxPath + "/login.html";
},
});
}
var active;
layui.use(['layer', 'element'], function() {
layui.use(["layer", "element"], function () {
var $ = layui.jquery,
layer = layui.layer;
var element = layui.element; //导航的hover效果、二级菜单等功能需要依赖element模块
element.on('nav(demo)', function(elem){
element.on("nav(demo)", function (elem) {
//layer.msg(elem.text());
});
@ -126,12 +141,17 @@ layui.use(['layer', 'element'], function() {
active = {
tabAdd: function (obj) {
var lay_id = $(this).attr("lay-id");
var title = $(this).html() + '<i class="layui-icon" data-id="' + lay_id + '"></i>';
var title =
$(this).html() +
'<i class="layui-icon" data-id="' +
lay_id +
'"></i>';
//新增一个Tab项
element.tabAdd('admin-tab', {
element.tabAdd("admin-tab", {
title: title,
content: '<iframe src="' + $(this).attr('data-url') + '"></iframe>',
id: lay_id
content:
'<iframe src="' + $(this).attr("data-url") + '"></iframe>',
id: lay_id,
});
element.tabChange("admin-tab", lay_id);
},
@ -139,12 +159,15 @@ layui.use(['layer', 'element'], function() {
element.tabDelete("admin-tab", lay_id);
},
tabChange: function (lay_id) {
element.tabChange('admin-tab', lay_id);
}
element.tabChange("admin-tab", lay_id);
},
};
//添加tab
$(document).on('click','a',function(){
if(!$(this)[0].hasAttribute('data-url') || $(this).attr('data-url')===''){
$(document).on("click", "a", function () {
if (
!$(this)[0].hasAttribute("data-url") ||
$(this).attr("data-url") === ""
) {
return;
}
var tabs = $(".layui-tab-title").children();
@ -162,53 +185,55 @@ layui.use(['layer', 'element'], function() {
//iframe自适应
function resize() {
var $content = $('.admin-nav-card .layui-tab-content');
var $content = $(".admin-nav-card .layui-tab-content");
$content.height($(this).height() - 147);
$content.find('iframe').each(function() {
$content.find("iframe").each(function () {
$(this).height($content.height());
});
}
$(window).on('resize', function() {
var $content = $('.admin-nav-card .layui-tab-content');
$(window)
.on("resize", function () {
var $content = $(".admin-nav-card .layui-tab-content");
$content.height($(this).height() - 147);
$content.find('iframe').each(function() {
$content.find("iframe").each(function () {
$(this).height($content.height());
});
}).resize();
})
.resize();
//toggle左侧菜单
$('.admin-side-toggle').on('click', function() {
var sideWidth = $('#admin-side').width();
$(".admin-side-toggle").on("click", function () {
var sideWidth = $("#admin-side").width();
if (sideWidth === 200) {
$('#admin-body').animate({
left: '0'
$("#admin-body").animate({
left: "0",
});
$('#admin-footer').animate({
left: '0'
$("#admin-footer").animate({
left: "0",
});
$('#admin-side').animate({
width: '0'
$("#admin-side").animate({
width: "0",
});
} else {
$('#admin-body').animate({
left: '200px'
$("#admin-body").animate({
left: "200px",
});
$('#admin-footer').animate({
left: '200px'
$("#admin-footer").animate({
left: "200px",
});
$('#admin-side').animate({
width: '200px'
$("#admin-side").animate({
width: "200px",
});
}
});
//手机设备的简单适配
var treeMobile = $('.site-tree-mobile'),
shadeMobile = $('.site-mobile-shade');
treeMobile.on('click', function () {
$('body').addClass('site-mobile');
var treeMobile = $(".site-tree-mobile"),
shadeMobile = $(".site-mobile-shade");
treeMobile.on("click", function () {
$("body").addClass("site-mobile");
});
shadeMobile.on('click', function () {
$('body').removeClass('site-mobile');
shadeMobile.on("click", function () {
$("body").removeClass("site-mobile");
});
});

View File

@ -61,6 +61,8 @@
var pers = checkPermission();
initMenuList();
function initMenuList() {
$.ajax({
type: 'get',
@ -107,8 +109,7 @@
tr += "</tr>"
$("#dt-table").append(tr);
}
// 递归获取菜单状态
getIsCheckFun(data)
}
});
@ -146,18 +147,7 @@
$("#dt-table").treetable(option);
function getIsCheckFun(list) {
if (list && list.length > 0) {
list.forEach((e) => {
if (e.isCheck === 1) {
console.log('有待审数据', e)
}
if (e.child && e.child.length > 0) {
getIsCheckFun(e.child)
}
})
}
}
</script>