課程
/前端開(kāi)發(fā)
/JavaScript
/JS動(dòng)畫(huà)效果
代碼如下:
if?(iTarget?==?icur)?{ if(fn){fn();} clearInterval(obj.timer); }
2017-08-03
源自:JS動(dòng)畫(huà)效果 5-1
正在回答
因?yàn)槿绻@樣先判斷有fn()方法時(shí),會(huì)先執(zhí)行調(diào)用fn()方法然后執(zhí)行clearintval(),但是這時(shí)候?yàn)g覽器并不會(huì)等到fn()方法執(zhí)行完才去調(diào)用clearintval().它會(huì)直接清除fn()內(nèi)的定時(shí)器。正好老師下節(jié)課會(huì)講到同時(shí)調(diào)用兩個(gè)?startMove()方法時(shí)會(huì)遇到的問(wèn)題,這時(shí)只會(huì)執(zhí)行第二個(gè)startMove()方法而不會(huì)一個(gè)一個(gè)調(diào)用也不會(huì)同時(shí)調(diào)用,原因就是第一個(gè)startMove()方法還沒(méi)執(zhí)行完第二個(gè)startMove()里的clearintval()就把第一個(gè)startMove()計(jì)時(shí)器清除了。這和你問(wèn)的問(wèn)題應(yīng)該是同一個(gè)道理吧。個(gè)人理解,適當(dāng)參考。
舉報(bào)
通過(guò)本課程JS動(dòng)畫(huà)的學(xué)習(xí),從簡(jiǎn)單動(dòng)畫(huà)開(kāi)始,逐步深入各種動(dòng)畫(huà)框架封裝
1 回答if(flag){clearInterval(obj.timer);if(fn){fn()}}
1 回答鏈?zhǔn)竭\(yùn)動(dòng)調(diào)用fn的時(shí)候,為什么clearInterval(timer)必須在if(fn){fn();}這段代碼之前。放在后面就不起作用了。
4 回答我認(rèn)為最終的fn不會(huì)執(zhí)行。
1 回答flag放到定時(shí)器外面為什么fn就沒(méi)法執(zhí)行了
2 回答為什么fn后面要加括號(hào)?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢(xún)優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-08-07
因?yàn)槿绻@樣先判斷有fn()方法時(shí),會(huì)先執(zhí)行調(diào)用fn()方法然后執(zhí)行clearintval(),但是這時(shí)候?yàn)g覽器并不會(huì)等到fn()方法執(zhí)行完才去調(diào)用clearintval().它會(huì)直接清除fn()內(nèi)的定時(shí)器。正好老師下節(jié)課會(huì)講到同時(shí)調(diào)用兩個(gè)?startMove()方法時(shí)會(huì)遇到的問(wèn)題,這時(shí)只會(huì)執(zhí)行第二個(gè)startMove()方法而不會(huì)一個(gè)一個(gè)調(diào)用也不會(huì)同時(shí)調(diào)用,原因就是第一個(gè)startMove()方法還沒(méi)執(zhí)行完第二個(gè)startMove()里的clearintval()就把第一個(gè)startMove()計(jì)時(shí)器清除了。這和你問(wèn)的問(wèn)題應(yīng)該是同一個(gè)道理吧。個(gè)人理解,適當(dāng)參考。