課程
/前端開發(fā)
/JavaScript
/JS動(dòng)畫效果
求問為什么把flag=true放在定時(shí)器里面就沒事了????
2016-11-14
源自:JS動(dòng)畫效果 7-1
正在回答
框架剛開始設(shè)計(jì)的時(shí)候,只能改變對(duì)象的單一屬性。后來,框架進(jìn)行了擴(kuò)展,目的是可以同時(shí)改變多個(gè)屬性。在引入flag之前,我們發(fā)現(xiàn)在停止計(jì)時(shí)器的時(shí)候,有一行代碼是“clearInterval()”清除定時(shí)器的操作。這樣就引入了一個(gè)bug。各個(gè)屬性不一定同時(shí)可以到達(dá)設(shè)定的改變值,可能第一個(gè)屬性到達(dá)時(shí),第二個(gè)屬性還在變化中,先到達(dá)的屬性觸發(fā)清除了定時(shí)器,導(dǎo)致了還沒到達(dá)的屬性值計(jì)時(shí)停止。所以,出現(xiàn)了Bug.
為了解決這個(gè)問題,使用一個(gè)變量flag來標(biāo)示所有的變量是否都變化結(jié)束。如果變化結(jié)束,就觸發(fā)清除定時(shí)器的操作。這個(gè)思想有點(diǎn)像信號(hào)量。你可以回去再仔細(xì)看看。
Carpe_Diem_9 提問者
舉報(bào)
通過本課程JS動(dòng)畫的學(xué)習(xí),從簡單動(dòng)畫開始,逐步深入各種動(dòng)畫框架封裝
2 回答兩個(gè)變量的位置問題
1 回答關(guān)于flag=true的問題
1 回答關(guān)于 聲明變量var timer =null 的位置問題
3 回答函數(shù)的位置
2 回答發(fā)現(xiàn)一個(gè)錯(cuò)誤,變量flag放置位置的問題,不是很懂
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-11-15
框架剛開始設(shè)計(jì)的時(shí)候,只能改變對(duì)象的單一屬性。后來,框架進(jìn)行了擴(kuò)展,目的是可以同時(shí)改變多個(gè)屬性。在引入flag之前,我們發(fā)現(xiàn)在停止計(jì)時(shí)器的時(shí)候,有一行代碼是“clearInterval()”清除定時(shí)器的操作。這樣就引入了一個(gè)bug。各個(gè)屬性不一定同時(shí)可以到達(dá)設(shè)定的改變值,可能第一個(gè)屬性到達(dá)時(shí),第二個(gè)屬性還在變化中,先到達(dá)的屬性觸發(fā)清除了定時(shí)器,導(dǎo)致了還沒到達(dá)的屬性值計(jì)時(shí)停止。所以,出現(xiàn)了Bug.
為了解決這個(gè)問題,使用一個(gè)變量flag來標(biāo)示所有的變量是否都變化結(jié)束。如果變化結(jié)束,就觸發(fā)清除定時(shí)器的操作。這個(gè)思想有點(diǎn)像信號(hào)量。你可以回去再仔細(xì)看看。