侧边导航

在很多网页项目中,我们常常会用到侧边导航。那么带图标的侧边导航又是怎么制作的呢?来看看个人写的侧边二级导航吧!

   

 <div class="box">
        <ul class="sidebar">
            <li class="myResume">
                <span>
                    <em class="icon-man02"></em>
                    <a>我的简历</a>
                    <em class="icon-up"></em>
                </span>
                <ul class="board none">
                    <li class="cur"><a href="">微简历</a></li>
                    <li><a href="">附件简历</a></li>
                </ul>
            </li>
             <li class="myArticle">
                <span>
                    <em class="icon01 icon-article"></em>
                    <a>我的文章</a>
                    <em class="icon02 icon-down"></em>
                </span>
                <ul class="board none">
                    <li><a href="">发布新文章</a></li>
                    <li><a href="">已发布文章</a></li>
                    <li><a href="">未发布文章</a></li>
                </ul>
            </li>
            <li class="myVideo">
                <span>
                    <em class="icon-video"></em>
                    <a>我的视频</a>
                    <em class="icon-down"></em>
                </span>
                <ul class="board none">
                    <li><a href="">我的视频</a></li>
                </ul>
            </li>
             <li class="myInfo">
                <span>
                <em class="icon-writer"></em>
                <a href="">作者信息</a>
                </span>
            </li>

        </ul>

    </div>

它引入的css

*{
    margin: 0;
    padding: 0;
}
img{
    border:0;
}
ol, ul ,li{list-style: none;}
body{
    font-family:"microsoft yahei";
    font-size: 14px;
}
.box{
    width: 202px;
    height: 500px;
    background: #f5f5f5;
    position: absolute;
    left: 0;
    top: 50px;
    background: #4F5E68;
}
.sidebar li,.sidebar li .board,.sidebar li .board li,.sidebar li .board li a{
    width: 100%;
    cursor: pointer;
}
.sidebar li .none{
    display: none;
}
.sidebar li .block{
   display: block;
}
.sidebar li span{
    width: 100%;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-size: 16px;
    display: block;
}
.sidebar li span a{
  height: 50px;
  line-height: 50px;
  padding: 0 25px 0 0;
  text-decoration: none;
  color: #fff;
  box-sizing: border-box;
}
.sidebar li .board li{
   height: 40px;
   line-height: 40px;
   text-align: center;
}
.sidebar li .board{
    color: #fff;
}
.sidebar li .board li a{
   color: #fff;
   font-size: 14px;
   text-decoration: none;
}
.sidebar li{
    border-top:1px solid #333E45;
}
.sidebar li.active{
    background: #222A2F;
}
.sidebar li span em{
   width: 24px;
   height: 24px;
   display: inline-block;
   margin-top: 14px;
   float: left;
}
.sidebar li span em.icon-man,.sidebar li span em.icon-article,.sidebar li span em.icon-video,.sidebar li span em.icon-writer,
.sidebar li span em.icon-man02,.sidebar li span em.icon-article02,.sidebar li span em.icon-video02,.sidebar li span em.icon-writer02{
  margin-left: 20px;
  margin-right:20px;
}
.sidebar li span a,.sidebar li span em{
  float: left;
}
.sidebar li span em.icon-man{
    background: url(../img/icon-job.png) no-repeat;
}
.sidebar li span em.icon-article{
    background: url(../img/icon-my.png) no-repeat;
}
.sidebar li span em.icon-video{
    background: url(../img/icon-video.png) no-repeat;
}
.sidebar li span em.icon-writer{
    background: url(../img/icon-writer01.png) no-repeat;
}
.sidebar li .board li.cur{
   background: #2f3545;
}
.sidebar li span em.icon-up{
  background: url(../img/up.png) no-repeat;
}
.sidebar li span em.icon-down{
  background: url(../img/down.png) no-repeat;
}
.sidebar li span em.icon-man02{
    background: url(../img/icon-job02.png) no-repeat;
}
.sidebar li span em.icon-article02{
    background: url(../img/icon-my02.png) no-repeat;
}
.sidebar li span em.icon-video02{
    background: url(../img/icon-video02.png) no-repeat;
}
.sidebar li span em.icon-writer02{
    background: url(../img/icon-writer02.png) no-repeat;
}

还有它的js

$(function(){
        $(‘.sidebar li‘).on(‘click‘,function(){
                var flag = true;
                flag = $(this).hasClass(‘active‘);
                if(flag == true){
                      $(this).children(‘span‘).children(‘em.icon-up‘).removeClass(‘icon-up‘).addClass(‘icon-down‘);
                      $(this).children(‘span‘).children(‘em.icon-man02‘).removeClass(‘icon-man02‘).addClass(‘icon-man‘);
                      $(this).children(‘ul‘).slideUp(500);

                }else{

                    $(‘.sidebar li.myResume span em.icon-up‘).removeClass(‘icon-up‘).addClass(‘icon-down‘);

                    $(this).children(‘span‘).children(‘.icon-down‘).removeClass(‘icon-down‘).addClass(‘icon-up‘);

                    $(this).siblings().children().children(‘.icon-up‘).removeClass(‘icon-up‘).addClass(‘icon-down‘);

                    $(this).children(‘ul‘).slideToggle(500);

                    $(‘.sidebar li.myResume ul‘).removeClass(‘block‘).addClass(‘none‘);

                    $(this).addClass(‘active‘).siblings().removeClass(‘active‘);
                }

        })

        $(‘.sidebar li.myResume .board‘).removeClass(‘none‘).addClass(‘block‘);
        $(‘.sidebar li.myResume‘).addClass(‘active‘);
   })

js文件中引入jquery-3.0.0,然后就大功告成。如果你有更好的建议,欢迎点评。

时间: 2024-10-10 14:19:52

侧边导航的相关文章

【源码分享】jquery+css实现侧边导航栏

jquery+css实现侧边导航栏 最近做项目的时候,突然想用一个侧边导航栏,网上找了几个插件,有的太丑而且不太符合我的预期.与其修改别人的代码,不如自己来写一个了.废话不多说先上图,感兴趣的请继续看下去. 1效果图 当有顶部导航栏的时候侧边导航栏会消失. 响应式方面,同样的顶部导航栏消失后右下角的图标才出现.点击出现导航,选中后消失: 这里是个demo ,没有做平滑滚动,需要的可以自己加上. 大体就介绍这么多吧,下面上代码. 2css代码 这里是css代码,详情请看注释 1 <style>

【AmazeUI】手机版页面的顶部导航条Header与侧边导航栏offCanvas

顶部导航条如果你细心留意下现在的页面,实在是太常见了.这个组件在手机端的页面中,同样可以借助AmazeUI这个前端框架实现.与此同时,可以在导航栏的最右方加一个触发侧边导航栏offCanvas.不要再使用BootStrap那种,一旦点击就大幅度下拉的导航了,反正我个人觉得很蛋疼的.一个导航活活地占据了页面大量位置.这个侧边导航栏offCanvas曾经是php方面的WorkPress的优秀设计来的. 使用AmazeUI做出来的效果如下: 首先是顶部导航栏的代码: <!--这里的顶部导航栏与Boot

jQuery实现侧边导航栏效果

效果图: 以下是完整代码: <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="keywords" content="JS代码,侧边菜单,拉出菜单,高级菜单,导航菜单,jquery菜单" /><met

基于jQuery右侧弹出侧边导航栏代码

基于jQuery右侧弹出侧边导航栏代码.这是一款点击按钮弹出侧边导航栏样式特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="box-bj"><img src="images/wd011.jpg" /></div> <div id="mintbar"><a id="closebtn" href="#"&g

移动端页面侧边导航滑入效果

效果体验:http://hovertree.com/texiao/mobile/2.htm 可以使用移动设备浏览器查看效果.效果使用到jquery-2.1.4.min.js,该版本的jQuery库是用于支持HTML5的浏览器上,不再兼容IE8以前的浏览器,现在移动端浏览器一般都支持HTML5,所以使用该jQuery没问题. HTML文件代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"

实现侧边导航栏的悬浮设置

首先看效果图: 最开始鼠标没有滚动的时候: 当鼠标滚动下拉到一定高度的时候: 侧边的悬浮框会一直悬浮在最左边,实现导航的悬浮. 通过js代码实现: js代码: var n_t1 = $('body').height() * 0.12; if(scrTop < n_t1){ $('.content2_left').css("position","absolute") $('.content2_left').css("left","0

iOS开发-仿大众点评iPad侧边导航栏

昨天其实已经写了一篇侧边栏的文章,不过感觉还不是很清晰,这篇文章算是补充吧,iPad上看了大众点评的侧边栏,基本上百分之九十类似,具体效果可参考下图: 对比昨天主要做了两个修改,一个是图片和文字的显示位置,另外一个就是关于底部的定位和设置的位置在横竖屏时显示的问题,侧边栏的区域是是自己控制的,需要注意一下横竖屏的时候设置一下autoresizingMask,底部图标定位的时候也是一样设置. 导航栏上每个按钮提取出了一个父类GPDockItem,头文件中的代码: // // GPDockItem.

使用bootstrap3.0搭建一个具有自定义风格的侧边导航栏

由于工作变动,新的项目组,可能会涉及到更多的类似于后台管理系统这一类的项目,而且开发可能更加偏向于传统型的开发,希望今后能够在新的项目中能够用得上vuejs吧! 接手项目的时候,就是一个后台管理系统,而且采用了Bootstrap进行搭建,页面大致模型也基本搭建成功了.然后看到页面上有一个侧边栏,之前是他们从别的地方找出来的一个侧边栏,给人的感觉总是差那么点意思.所以重构了一下.具体的效果,请移步bootstrap-sidebar . 其实主要就解决了两个问题: 1.与内容等高,最小高度为一屏的高

关于scroll实现侧边导航栏

需求为一个简单的scroll效果,侧边选项卡跟随屏幕向下拖动变颜色的.点击侧边选项卡,跳转到相应模块. 索性上网找了一下类似的效果.附带源码地址  https://blog.csdn.net/dream_fa/article/details/72842193 原有样式与js确实有点欠妥,所以进行了简单修改. 需要注意的是js代码中.取得网页被卷去的高的时候,并未考虑兼容性的问题.以至于可能影响整体效果. eg:// var scroH=document.body.scrollTop; var s