开发者社区> 问答> 正文

Javascript怎么实现滑动效果的方法?

慕课网某个大神回复:设定一个定时器,给一个时间,让侧边栏的宽度每次(增加 1px),到一定宽度的时候清除定时器;同样的方法,再次点击时,侧边栏宽度每次(减少 1px),设置侧边栏溢出隐藏.
原来的JS代码没有动画效果:

           var navmenu = document.getElementById("header-sidebar");
               if(navmenu.style.width=="")
                   {
                       navmenu.style.width= 50 + 'px';
                   }else{
                       navmenu.style.width="";
               }

下面加上滑动效果的代码,不过这个代码实现不了。不知道哪里有问题

        var navmenu = document.getElementById("header-sidebar");
        timer = null;
        if(navmenu.style.width=="")
        {
            for(width=160;width>50;width--)
            timer = setInterval(function() {
                navmenu.style.width= width + 'px';   
             }, 50);  
        }else{
            for(width=50;width<160;width++)
            timer = setInterval(function() {
                navmenu.style.width= width + 'px';   
             }, 50); 
        }

不知道怎么解决,请各位大神帮忙修改。
screenshot

展开
收起
杨冬芳 2016-06-20 15:12:44 2334 0
1 条回答
写回答
取消 提交回答
  • IT从业

    动画效果使用css3控制动画过度时间

    2019-07-17 19:44:10
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载