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

这么写的弊端到底在哪里啊?

<script type="text/javascript">
   var moocBox=document.getElementById('moocBox'),
       con1=document.getElementById('con1'),
       con2=document.getElementById('con2'),
       iheight=24,
       speed=50,
       delay=2000;
   
   con2.innerHTML=con1.innerHTML;
   var timer=setInterval('scrollin()',speed);
   function scrollin(){
       if(moocBox.scrollTop==con1.offsetHeight){
            moocBox.scrollTop=0;
            }
       else{
            moocBox.scrollTop++;
       }
       if(moocBox.scrollTop%iheight ==0){
            clearInterval(timer);
       }
       setTimeout('scrollin()', delay);
       }
</script>




新人,求轻拍。
js代码如上,主要是在原来无缝循环的基础上加上delay判断条件,再利用setTimeout的delay以及循环实现动作,测试可行,但在运行一段时间之后动作流畅度就会变的很差,safari上不明显,Chrome特别明显,为什么,到底有啥bug?


正在回答

1 回答

scrollin这个函数  在定时器里每50ms执行一次  里边你定义了一个setTimeout   也就是每50ms就会开启一次延时,时间长了 不是说网页变卡  是延迟的时间再增加  刚开始是2s+50ms  时间长了就是3s  4s  你就会感觉明显 

我没测试你这段代码  不知道你是有个else没写 还是其它什么原因 https://img1.sycdn.imooc.com//5b977ddd0001dded03620152.jpg

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
信息滚动效果制作
  • 参与学习       47735    人
  • 解答问题       333    个

萌妹子带您快速学习滚动效果,掌握无缝滚动和歇间性滚动的制作方法

进入课程

这么写的弊端到底在哪里啊?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号