继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

js实现jq的slide Toggle

小鑫啊
关注TA
已关注
手记 5
粉丝 1
获赞 19

js实现jq的slide Toggle

js实现jq的slideToggle

特点:

  1. 不用设置下拉的高度 自动获取

  2. 兼容所有主流浏览器及IE6-8

  3. 调用方便

代码:


<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">

<title>小鑫博客 - www.xiaoxina.cn</title>

<style>

.wrap {

width: 800px;

height: auto;

background: #2EA2DE;

margin: 150px auto;

}



.ul {

width: 100px;

height: auto;

overflow: hidden;

float: left;

}



.title {

width: 100px;

height: 30px;

line-height: 30px;

background: #2EA2DE;

color: #fff;

text-align: center;

}



.content {

    width: 100px;

    height: auto;

    background: #2b96cc;

    position: relative;

    text-align: center;

    overflow: hidden;

}



.content a {

display: block;

color: #fff;

margin: 8px 0;

text-decoration: none;

}

</style>

</head>

<body>

<div class="wrap">

<div class="ul">

<div class="title">这是标题</div>

<div class="content">

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

</div>

</div>

<div class="ul">

<div class="title">这是标题</div>

<div class="content">

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

</div>

</div>

<div class="ul">

<div class="title">这是标题</div>

<div class="content">

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

</div>

</div>

<div class="ul">

<div class="title">这是标题</div>

<div class="content">

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

<a href="http://www.xiaoxina.cn">小鑫博客</a>

</div>

</div>

</div>



    <!--兼容浏览器的getClassName-->

    <script src="http://www.xiaoxina.cn/js/getClassName.js" charset="UTF-8"></script>

<script>

var ul = getClassName('ul');

var ct = getClassName('content');

var ctH = [];



for(var j=0;j<ul.length;j++) {

    // 获取下拉菜单的高度

    ctH.push(ct[j].offsetHeight)

    // 重置下拉菜单的高度

    ct[j].style.height = 0;

}



for(var i=0;i<ul.length;i++) {

    ul[i].id = i;



    ul[i].onmouseover = function() {

     // 获取触摸的id值

        var id = this.id;

        setHeight(id, ctH[id], 1, 1);

    }



    ul[i].onmouseleave = function() {

        var id = this.id;

        setHeight(id, 0, -1, 1)

    }

}

        

        // 参数:

        //      id     当前触摸的id

        //      end    指定高度暂停(默认是当前高度)

        //      step   每1毫秒增加多少高度

        //      time   指定的间隔时间

function setHeight(id, end, step, time) {

    clearInterval(ct[id].timer);

    ct[id].timer = setInterval(function() {

        if (ct[id].offsetHeight === end) {

            clearInterval(ct[id].timer)

        }else {

            ct[id].style.height = ct[id].offsetHeight + step + 'px';

            console.log(end);

            console.log(ct[id].offsetHeight)

        }

    },time);

}

</script>

</body>

</html>

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP