为了账号安全,请及时绑定邮箱和手机立即绑定

左侧竖条导航栏点击出现效果的实现

标签:
Html/CSS

  大部分的网站导航栏都是在网页的顶端,这类导航栏看起来非常一般,而有些在左侧竖着显示的导航栏就比较好看一些了,但是今天为大家介绍的是左侧竖条导航栏实现点击出现的效果,也就是刚开始只显示导航,不显示分类栏,而点击导航就可以显示分类栏了,下面一起来看下源代码的实现吧。
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="js/jquery.min.js"></script>
<script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">;
</script>
<style>
html,
body {
padding: 0;
margin: 0;
}

    main {        width: 100%;    }    .main {        width: 100%;        min-height: 100vh;        background-color: #ccc;    }    .x_left {        position: fixed;        left: 0;        top: 100px;        width: 100px;        /* border: 1px solid red; */    }    .x_left_title {        padding: 10px 0;        margin: 2px 0;        width: 50px;        background-color: white;        box-shadow:  0 0 5px 1px rgb(99, 99, 99);        display: flex;        justify-content: center;        align-items: center;        position: relative;    }    .x_left_main {        display: flex;        flex-flow: column;        /* border: 1px solid red; */        position: relative;        width: 0;    }    .x_left_main span {        padding: 10px 0;        margin: 3px 0;        width: 100px;        background-color: white;        box-shadow:  0 0 5px 1px rgb(122, 147, 160);        display: flex;        justify-content: center;        align-items: center;        position: relative;        left: -100px;    }</style>

</head>

<body>
<main>
<div class="main">
<div class="x_left">
<div class="x_left_title">
导航
</div>
<div class="x_left_main">
<span>aaa11111111</span>
<span>aaa22222222</span>
<span>aaa33333333</span>
<span>aaa44444444</span>
<span>aaa55555555</span>
<span>aaa66666666</span>
<span>aaa77777777</span>
<span>aaa88888888</span>
<span>aaa99999999</span>
</div>
</div>
</div>
</main>
<script>
var show = "";
var hidden = ""
var hidden_top = "";
var hidden_top_num = "";
var hidden_bottom_num = "";
var length = $(".x_left_main span").length;
var num = 0;
var whether = 99;
var qsb = 99

    $(".x_left_title").click(function(){        if(whether==99&&qsb==99){            qsb = 1            $(this).stop().animate({width:"100px"},1000)            var num = 0;            $(".x_left_main span").eq(num).stop().animate({                left:"0"            },150)            show = setInterval(function(){                if(num!=length){                    num++                    $(".x_left_main span").eq(num).stop().animate({                        left:"0"                    },150)                }else{                    clearInterval(show)                    whether = 1                    qsb = 99                }            },150)        }else{            if(qsb==99&&whether==1){                qsb = 1                $(this).stop().animate({width:"50px"},1000)                var num = 0;                $(".x_left_main span").eq(num).stop().animate({                    left:"-100px"                },150)                show = setInterval(function(){                    if(num!=length){                        num++                        $(".x_left_main span").eq(num).stop().animate({                            left:"-100px"                        },150)                    }else{                        clearInterval(show)                        whether = 99                        qsb = 99                    }                },150)            }        }    })    $(".x_left_main span").each(function(i){        $(this).click(function(){            $(".x_left_title").stop().animate({width:"50px"},1000)            hidden_top_num = i            hidden_bottom_num = i            $(this).stop().animate({                left:"-100px"            })            hidden_top = setInterval(function(){                if(hidden_top_num!=0){                    hidden_top_num--                    $(".x_left_main span").eq(hidden_top_num).stop().animate({                        left:"-100px"                    })                }else{                    clearInterval(hidden_top)                    whether = 99                    qsb = 99                }            },150)            hidden_bottom = setInterval(function(){                if(hidden_bottom_num!=length){                    hidden_bottom_num++                    $(".x_left_main span").eq(hidden_bottom_num).stop().animate({                        left:"-100px"                    })                }else{                    clearInterval(hidden_bottom)                    whether = 99                    qsb = 99                }            },150)        })    })</script>

</body>

</html>

  

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消