這代碼哪里出錯(cuò)了,為什么會(huì)不斷加快速度
<!DOCTYPE html>
<html>
<head>
? <meta charset="UTF-8" />
? <title>demo</title>
? <style type="text/css">
? ? *{margin:0;padding:0;}
? ? div{width:50px;
? ? ? ? overflow:hidden;
? ? ? height:50px;
? ? }
? ? ul{
? ? ? height: 72px;
? ? ? overflow:hidden;
? ? ? border:1px solid #ccc;
? ? }
? </style>
</head>
<body>
? <div>
? ? <ul id="box">
? ? ? ? <li>哈哈哈</li>
? ? ? ? <li>ooooo</li>
? ? ? ? <li>cccc</li>
? ? ? ? <li>qqqqqqq</li>
? ? </ul>
? </div>
? <script type="text/javascript">
? ? var box=document.getElementById('box'),
? ? ? ? marqueeSpeed=50,
? ? ? ? marqueeTimeOut=2000,
? ? ? ? timer=null;
? ? box.innerHTML+=box.innerHTML;
? function startMove(){
? ? ? box.scrollTop++;
? ? timer=setInterval("scrollUp()",50);
? }
? function scrollUp(){
? ? ? if (box.scrollTop%18==0) {
? ? ? ? clearInterval(timer);
? ? ? ? setInterval("startMove()",2000);
? ? ? }else{
? ? ? ? box.scrollTop++;
? ? ? ? if (box.scrollTop>=box.scrollHeight/2) {
? ? ? ? ? box.scrollTop=0;
? ? ? ? };
? ? ? }
? }
? ? function getStyle(obj,attr){
? ? if (obj.currentStyle) {
? ? ? return obj.currentStyle[attr];
? ? }else{
? ? ? return getComputedStyle(obj,false)[attr];
? ? }
? }
? setTimeout('startMove()',2000);
? </script>
</body>
</html>
2016-11-16
2016-11-20
如樓上所見 只需把setInterval 改成setTimeout即可