怎样用原生JS去实现jq的slideToggle呢?

我的想法是,用定时器做高度变化,但是写出来之后发现效果并没有这么好啊,大家都有怎样的思路去实现呢

function upDown(targetObj,max,min,speed) {

    var timer;

    var myStyle = targetObj.style;

    if ( myStyle.display == 'none' ){

            myStyle.display = 'block';

            var newHeight = parseInt(myStyle.height);

            clearInterval(timer);

            timer = setInterval(function(){

                var newHeight = parseInt(myStyle.height);

                if ( parseInt(myStyle.height) == max ){

                    clearInterval(timer);

                }else{

                    myStyle.height = newHeight + speed + 'px';

                }

            },1000/60);

    }else{

        clearInterval(timer);

        timer = setInterval(function(){

            var newHeight = parseInt(myStyle.height);

            if ( parseInt(myStyle.height) == min ){

                clearInterval(timer);

                myStyle.display = 'none';

            }else{

                myStyle.height = newHeight - speed +'px';

            }

        },1000/60);

    }

    }


qq_笑_17
浏览 717回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript