發現一個錯誤,變量flag放置位置的問題,不是很懂
老師是把變量直接放置在了function start(obj,json,fn){????的下方
而我運行
oLi.onmouseover = function(){
start(oLi,{width:400,height:200,opacity:100},function(){
start(oLi,{opacity:30},function(){
start(oLi,{width:200,height:100})
})
})
}
這段代碼的時候,發現透明度沒變化
然后我把var flag = true; 放置到了for in 上方 定時器下第一個
就可以正常運行了
但我不太明白是什么原因,可否解釋的明白一點
老師寫在function start(obj,json,fn)這個函數的局部內不是都應該有效嗎
2016-05-16
我試過把var flag = true;?放置到for in 上方和放在function start(obj,json,fn)這個函數的局部內都是可行的。
兩者的區別是:前者是在setInterval( ? ,30)內,所以相當于每30ml對flag 賦一次 true;?
后者的var flag = true; 相當于是“全局變量”,在setInterval( ? ,30)內當然可以使用flag,更可以改變flag.
2016-05-14
我對著flag判斷不等于那塊不明白,你明白嗎