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;

};

}

相关推荐
Le_ee1 分钟前
ctfweb:php/php短标签/.haccess+图片马/XXE
开发语言·前端·php
爱上好庆祝10 分钟前
学习js的第七天(wed APIs的开始)
前端·javascript·css·学习·html·css3
KaMeidebaby1 小时前
卡梅德生物技术快报|冻干工艺开发:注射用心肌肽全流程参数优化与工程化方案
前端·其他·百度·新浪微博
ooseabiscuit1 小时前
Laravel6.x核心优化与特性全解析
android·开发语言·javascript
哆啦A梦15882 小时前
20, Springboot3+vue3实现前台轮播图和详情页的设计
javascript·数据库·spring boot·mybatis·vue3
Moment2 小时前
面试官:如果产品经理给你多个需求,怎么让AI去完成❓❓❓
前端·后端·面试
每天吃饭的羊2 小时前
JSONP
前端
gogoing2 小时前
ESLint 配置字段说明
前端·javascript
Lkstar2 小时前
面试官让我手写 Promise.all / Promise.race / Promise.allSettled,我直接水灵灵地写出来了
javascript·面试
gogoing2 小时前
CSS 属性值计算过程(Computed Value)
前端·css