jquery隐藏侧边栏和折叠侧边栏方法

两种效果如下所示:

隐藏侧边栏:

 

折叠侧边栏:

 

下面,分享隐藏侧边栏实现方法:

实现思路:给body切换class,通过class控制侧边栏和主体部分left 来实现效果

html部分:

1
2
< div  class="sidebar">侧边栏</ div >
< div  class="main">主体部分</ div >

 

css部分:

1
2
3
4
.sidebar{ background #333645 ; width 200px position absolute left 0 top 0 height 100% overflow auto ; transition:  all  0.2 s ease  0 s;}
.main{ overflow hidden position absolute left 200px right 0 height 100% ; transition:  all  0.2 s ease  0 s;}
.big-page .sidebar{ left -200px ;}
.big-page .main{ left 0 ;}

 

js部分:

1
2
3
4
5
6
7
8
9
10
11
12
// 切换侧边栏
$( function (){
     // 切换侧边栏
     $( ".navbar-left li" ).click(toggleSidebar);
});
 
 
//切换侧边栏显示隐藏
function  toggleSidebar(){
     $( "body" ).toggleClass( "big-page" );
     return  false ;
}

 

折叠侧边栏实现方法:

实现思路:和隐藏侧边栏实现基本上相同,折叠后(只显示图标的时候)使用css控制栏目显示和隐藏。

在线效果:折叠侧边栏效果, 我真是操碎了心(捂脸)

htm部分:

复制代码
<body>
<div class="container-fluid">
    <div class="row">
        <!-- 侧边栏 -->
        <div class="sidebar">
            <h4>博客管理系统(四月)</h4>
            <div class="cover">
                <h2><img class="img-circle" src="images/icon_face.jpg"/></h2>
                <b>Hi~ 小主</b>
                <p>超级管理员</p>
            </div>
            <ul class="sidenav animated fadeInUp">
                <li><a class="withripple" href=""><i class="icon icon-home"></i><span class="sidespan">首页</span></a></li>                
                <li><a class="withripple hover" href="javascript:;"><i class="icon icon-article"></i><span class="sidespan">文章管理</span><i class="iright pull-right">&gt;</i></a>
                    <ul class="sidebar-dropdown">
                        <li><a href="list.html" class="withripple" target="myframe">文章列表</a></li>
                        <li><a href="add.html" class="withripple" target="myframe">添加文章</a></li>
                    </ul>
                </li>
                <li><a class="withripple" href="javascript:;"><i class="icon icon-ui"></i><span class="sidespan">UI设计</span><i class="iright pull-right">&gt;</i></a>
                    <ul class="sidebar-dropdown">
                        <li><a href="" class="withripple">UI设计列表</a></li>
                        <li><a href="" class="withripple">添加作品</a></li>
                    </ul>
                </li>
                <li><a class="withripple" href="javascript:;"><i class="icon icon-web"></i><span class="sidespan">WEB前端</span><i class="iright pull-right">&gt;</i></a>
                    <ul class="sidebar-dropdown">
                        <li><a href="" class="withripple">文章列表</a></li>
                        <li><a href="" class="withripple">添加WEB作品</a></li>
                    </ul>
                </li>
                <li><a class="withripple" href="javascript:;"><i class="icon icon-php"></i><span class="sidespan">PHP后台</span><i class="iright pull-right">&gt;</i></a>
                    <ul class="sidebar-dropdown">
                        <li><a href="" class="withripple">PHP项目</a></li>
                        <li><a href="" class="withripple">添加项目</a></li>
                    </ul>
                </li>
            </ul>
        </div>
        <!-- 侧边栏 完-->
<!-- 主体部分  -->
        <div class="main">    主体部分的内容</div>
</body>
复制代码

 

css部分:

复制代码
/* sidebar
 ---------------------------------------- */
.sidebar{
  position: fixed; 
  width: 215px; height: 100%; background: #262930; 
  transition: all .3s ease;
}
.sidebar > h4{
  margin: 0; padding: 18px 10px;
  background: #00bfa5; color: #fff; font-size: 18px;  
  white-space: nowrap;
}
.cover{
  padding-top:40px; padding-bottom: 10px;
  text-align: center;  background: #20242c; 
}
.cover > h2{
  position: relative; 
  margin: 0 auto; max-height: 80px; max-width: 80px; 
  background: #3d4147; border: 1px solid #1ab394; border-radius: 50%;
}
.cover > h2 img{
  position: relative; z-index: 100; 
  width: 100%; margin-left: -5px;
  border: 1px solid #1ab394; 
}
.cover > h2:after{
  content:''; 
  position: absolute; left: -12px; top: -8px; 
  height: 96px; width: 96px; 
  background: #3d4147; border-radius: 50%; 
}
.cover > b{
  display: block;
  margin-top: 20px; 
  color: #f3f3f4; font-size: 13px; 
}
.cover > p{ margin-top: 4px;color: #acb0b8; font-size: 12px;}

/*sidenav*/
.sidenav,.sidebar-dropdown{padding: 0; }
.sidenav a{color: #9d9d9d; }
.sidenav > li > a{
  display: block; padding: 10px;
  font-size: 14px; border-left: 2px solid transparent; 
  transition: .3s linear; 
}
.sidenav > li > a > i{margin-right: 10px;}
.sidenav > li > a.hover,
.sidenav > li > a:hover{
  border-left: 2px solid #21b496; background: #20242c; text-decoration: none;
}
.iright{margin-top: 4px; font-family:"宋体"; font-style: normal; }
.sidebar-dropdown{
  display: none;
  font-size: 14px; background: #20242c; border-left: 2px solid #21b496; }
.sidebar-dropdown > li > a{display: block; padding: 10px 0 10px 36px;}

/*伸缩侧边css代码*/
.sidebar-collapse .main{margin-left: 60px;}
.sidebar-collapse .sidebar{width: 60px;}
.sidebar-collapse .sidenav > li{position: relative; z-index: 9999; text-align: center;}
.sidebar-collapse .sidenav > li:hover > a{border-left: 2px solid #21b496; background: #20242c; text-decoration: none;}
.sidebar-collapse .sidenav > li:hover .sidebar-dropdown{display: block!important;}
.sidebar-collapse .cover > b{font-size: 12px;}
.sidebar-collapse .cover > p,
.sidebar-collapse .sidespan,
.sidebar-collapse .iright,
.sidebar-collapse .cover > h2:after{
    display: none;
}
.sidebar-collapse .cover{padding-top: 30px;}
.sidebar-collapse .cover > h2{margin: 6px;}
.sidebar-collapse .sidebar-dropdown{
  position: absolute; top: 0; left: 60px; z-index: 9999;
  display: none!important;
  width: 150px; border-left: none; list-style: none;   
}
.sidebar-collapse .sidebar-dropdown > li > a{padding-left: 0; }
.sidebar-collapse .sidebar-dropdown > li > a:hover{background: #191e26; text-decoration: none; color: #fff;}
.sidebar-collapse .cover > h2 img{margin-left: 0; border: none;}
/* main
 ---------------------------------------- */
.main{overflow: hidden; margin-left: 215px; transition: all .3s ease; padding-top: 50px;}
复制代码

 

js部分:

复制代码
/* 侧边栏切换形态 */
$(".navbar-side a").click(function(){
    $("body").toggleClass("sidebar-collapse");
    if($("body").hasClass("sidebar-collapse")){
        $(".sidebar > h4").html("博客");
    }else{
        $(".sidebar > h4").html("博客管理系统(四月)");
    }
    return false;
})

$(".sidenav>li>a").click(function(){
    $(this).addClass("hover");
    $(this).next().slideToggle();    
    $(this).parent().siblings().children("a").removeClass("hover").next().slideUp();
    
})
复制代码

 原文:原文

  • 8
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值