C# MVC +Layui侧边导航栏的收缩及展开

目录

1、头部代码

2、侧边栏(例子只写了一级导航,需要多级可自行添加)

3、body内容填充

[4、 JS](#4、 JS)


1、头部代码

<div class="layui-layout layui-layout-admin">

<div class="layui-header">

<div class="layui-main">

<div class="layui-logo" style="width:100px">//logo

<i class="layui-icon layui-icon-form"></i><span>管理系统</span>

</div>

<ul class="layui-nav layui-layout-left ">//添加收缩图标按钮

<li class="layui-nav-item layui-show-xs-inline-block " lay-header-event="menuLeft">

<i class="layui-icon layui-icon-spread-left" id="icon"></i>

</li>

</ul>

</div>

</div>

2、侧边栏(例子只写了一级导航,需要多级可自行添加)

<div class="layui-side layui-bg-black">

<div class="layui-side-scroll">

<ul class="layui-nav layui-nav-tree" lay-filter="navSlide">

<li class="layui-nav-item layui-nav-itemed">

<a class='layui-icon layui-icon-home' href="/Home/Index">

<i><span>&nbsp;首页</span></i>

</a>

</li>

<li class="layui-nav-item ">

<a class='layui-icon layui-icon-form' href="/Material/Index">

<i><span>&nbsp;11</span></i>

</a>

</li>

<li class="layui-nav-item ">

<a class='layui-icon layui-icon-add-circle' href="/Home/About">

<i><span>&nbsp;22</span></i>

</a>

</li>

<li class="layui-nav-item ">

<a class='layui-icon layui-icon-reduce-circle' href="/Home/Contact">

<i><span>&nbsp;33</span></i>

</a>

</li>

<li class="layui-nav-item ">

<a class='layui-icon layui-icon-chart-screen' href="/">

<i><span>&nbsp;44</span></i>

</a>

</li>

</ul>

</div>

</div>

3、body内容填充

<div class="layui-body">

<div class="layui-fluid">

@RenderBody()

</div>

</div>

4、 JS

var isShow = true;//是否展开

util.event('lay-header-event', {

menuLeft: function (othis) { // 左侧菜单事件

//选择出所有的span,并判断是不是hidden,用来隐藏icon后面的span里面的内容,而icon不隐藏

$('.layui-nav-item span').each(function () {

if ($(this).is(':hidden')) {

$(this).show();

} else {

$(this).hide();

};

});

$('.layui-header span').each(function () {//同上

if ($(this).is(':hidden')) {

$(this).show();

} else {

$(this).hide();

};

});

//判断isshow的状态

if (isShow) {//收起来

$('.layui-side.layui-bg-black').width(60); //设置宽度

$('.layui-logo').width(30);

$('#icon').removeClass("layui-icon-spread-left"); //移除左图标

$('#icon').addClass("layui-icon-shrink-right"); //添加右图标

//将侧边栏和body的宽度修改

$('.layui-layout-left').css('left', 60 + 'px');

$('.layui-body').css('left', 60 + 'px');

//将二级导航栏隐藏

// $('dd span').each(function () {

// $(this).hide();

// });

//修改标志位

isShow = false;

} else {//展开来

$('.layui-side.layui-bg-black').width(200);

$('.layui-logo').width(100);

$('.layui-layout-left').css('left', 200 + 'px');

$('.layui-body').css('left', 200 + 'px');

/* $('dd span').each(function () {

$(this).show();

});*/

$('#icon').addClass("layui-icon-spread-left"); //修改左图标

$('#icon').removeClass("layui-icon-shrink-right"); //移除右图标

isShow = true;

};

}

相关推荐
yume_sibai16 分钟前
06-Rust Web 开发实战(Axum 框架 + 数据库 + JWT 认证 + 中间件 + 部署)
前端·数据库·rust
计算机魔术师2 小时前
特朗普上台打给黄仁勋:AI末日论是骗局,我们绝不让它发生
前端
troy1282 小时前
Python 基础语法(八):Web 后端开发、数据分析与可视化、网络爬虫、人工智能 / 大模型应用
前端·python·数据分析
计算机魔术师2 小时前
CEO说要慢下来,黑客说别做梦了——同一篇论文,两种命运
前端
kyriewen3 小时前
我花3天抓了一个幽灵bug,凶手藏在第4层
前端·javascript·程序员
IT_陈寒3 小时前
Java里用Stream.parallel()翻车实录,这性能还不如单线程
前端·人工智能·后端
wangchunyu1143 小时前
JavaScript 零基础入门教程
前端
hanchenxing4 小时前
前端异步任务三方案:Celery vs Redis Stream vs BullMQ 实战对比消息队列
前端·数据库·redis·异步任务·方案对比
mONESY4 小时前
LangGraph.js 从零上手:把 Agent 工作流从一条线变成一张网
javascript
默_笙4 小时前
⚓ AI 的"官方答题卡":withStructuredOutput 与结构化输出的终局之战
前端·javascript