关于 声明变量var timer =null 的位置问题
function stateMove(iTarget){ var oDiv=document.getElementById('div1'); var timer=null; var speed=0; if(oDiv.offsetLeft>iTarget){ speed=-10; }else{ speed=10; } clearInterval(timer); timer=setInterval(function(){ if(oDiv.offsetLeft==iTarget){ clearInterval(timer); }else{ oDiv.style.left=oDiv.offsetLeft+speed+'px'; } },30); }
代码中 声明var timer = null 必须放在stateMove() 函数之外吗? 放在如上代码在函数内部声明会出现bug 这是什么原因? 必须得放在函数外边声明吗?谢谢!