為什么把 var timer=null放進startmove()里就不起作用,多次觸碰還是會變快
function?startmove()?{ ????var?timer=null; ????clearInterval(timer); ????var?oDiv=document.getElementById("div1"); ????timer=setInterval(function?()?{ ????????if?(oDiv.offsetLeft==0){ ????????????clearInterval(timer); ????????}else?{ ????????????oDiv.style.left=oDiv.offsetLeft+1+'px'; ????????} ????},50) }
2018-04-28
當你多次觸碰時,上一次的定時器timer被?
重新賦值了(即timer這個定時器的對象找不到了),導致clearInterval(timer),起不了作用。
應(yīng)該將var timer=null;寫在函數(shù)的外面