把你的flag聲明位置改一改,試想:我在進(jìn)入定時(shí)器之后馬上var flag = true;如此,每次執(zhí)行定時(shí)器內(nèi)的代碼時(shí),我們都會(huì)重新得到一個(gè)flag,值為true;如果運(yùn)動(dòng)的動(dòng)態(tài)值(寬、高、透明度)沒(méi)有達(dá)到我們的既定目標(biāo)值,當(dāng)前的flag = false,定時(shí)器不會(huì)停止,程序繼續(xù)執(zhí)行,于是在下一次執(zhí)行定時(shí)器內(nèi)部程序時(shí),我們會(huì)再次var flag = true;若這一次運(yùn)動(dòng)的動(dòng)態(tài)值達(dá)到了目標(biāo)值,flag就不會(huì)賦值為false,如此,可以判斷是否需要執(zhí)行回調(diào)函數(shù)。
2018-06-02
是寫(xiě)錯(cuò)了,如果寫(xiě)在定時(shí)器外,在下一次執(zhí)行startMove()之前,flag永遠(yuǎn)都會(huì)是true。
2018-05-21
視頻中flag的聲明位置應(yīng)該是寫(xiě)錯(cuò)了,實(shí)際上應(yīng)該是寫(xiě)在定時(shí)器內(nèi)。
視頻中為什么動(dòng)畫(huà)會(huì)停止?完全是因?yàn)閟peed歸0了,動(dòng)畫(huà)停止了,但實(shí)際上定時(shí)器并沒(méi)有停止,還在繼續(xù)運(yùn)行。
2018-05-18
把你的flag聲明位置改一改,試想:我在進(jìn)入定時(shí)器之后馬上var flag = true;如此,每次執(zhí)行定時(shí)器內(nèi)的代碼時(shí),我們都會(huì)重新得到一個(gè)flag,值為true;如果運(yùn)動(dòng)的動(dòng)態(tài)值(寬、高、透明度)沒(méi)有達(dá)到我們的既定目標(biāo)值,當(dāng)前的flag = false,定時(shí)器不會(huì)停止,程序繼續(xù)執(zhí)行,于是在下一次執(zhí)行定時(shí)器內(nèi)部程序時(shí),我們會(huì)再次var flag = true;若這一次運(yùn)動(dòng)的動(dòng)態(tài)值達(dá)到了目標(biāo)值,flag就不會(huì)賦值為false,如此,可以判斷是否需要執(zhí)行回調(diào)函數(shù)。