課程
/前端開發(fā)
/JavaScript
/JS動(dòng)畫效果
我在納悶 flag根本沒有變?yōu)閠ure,怎么會(huì)停止的定時(shí)器呢? 怎么回事?我看了好多遍 都沒看明白呢 ?在哪提問(wèn)啊 ?我找不到呢?
2017-03-09
源自:JS動(dòng)畫效果 6-2
正在回答
是不是版本的問(wèn)題?呵呵,用后期的軟件AE做的。
如果把flag放在計(jì)時(shí)器內(nèi)的話 把width 和height的參數(shù)調(diào)換一下就清楚看到效果了,一開始把width設(shè)為500,然后你把height設(shè)為201試試, 這時(shí)候按F12看看應(yīng)該是沒有問(wèn)題的,但是你把width設(shè)為201,height設(shè)為500在運(yùn)行調(diào)試,出問(wèn)題了。
樓上不對(duì)吧,flag怎么能放在計(jì)時(shí)器里,如果放在計(jì)時(shí)器里跟沒有定義flag這個(gè)參數(shù)是一樣的,同樣會(huì)出現(xiàn)bug
flag=true應(yīng)該定義在setInterval里面,
思路是這樣的:
1.每次復(fù)用都將flag設(shè)為true,
2.如果有未達(dá)到目標(biāo)的這時(shí)將flag覆蓋為false;
3.在結(jié)束前判斷flag為true 則清除
雖然width到達(dá)了目標(biāo),但是opacity未達(dá)到目標(biāo) flag 被覆蓋為 false,不能進(jìn)入clearInterval的判斷
只有當(dāng)所有的目標(biāo)達(dá)到時(shí),if(icurr != json[attr])的判斷無(wú)法進(jìn)入 flag 不能被設(shè)置為false,這時(shí)候flag為開始定義的true,隨后clearInterval將被執(zhí)行;
function Move(obj,json,fn){
????clearInterval(obj.timer)
????obj.timer = setInterval(function(){
????????var flag = true;//放在這里
????????for(var arr in json){
舉報(bào)
通過(guò)本課程JS動(dòng)畫的學(xué)習(xí),從簡(jiǎn)單動(dòng)畫開始,逐步深入各種動(dòng)畫框架封裝
12 回答flag = false 是什么時(shí)候被重置為true的?
2 回答flag怎么賦值
1 回答關(guān)于obj.timer被賦值的問(wèn)題
1 回答為什么timer 一定要賦值為 null ?
3 回答flag值的改變?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2022-03-26
是不是版本的問(wèn)題?呵呵,用后期的軟件AE做的。
2017-03-26
如果把flag放在計(jì)時(shí)器內(nèi)的話 把width 和height的參數(shù)調(diào)換一下就清楚看到效果了,一開始把width設(shè)為500,然后你把height設(shè)為201試試, 這時(shí)候按F12看看應(yīng)該是沒有問(wèn)題的,但是你把width設(shè)為201,height設(shè)為500在運(yùn)行調(diào)試,出問(wèn)題了。
2017-03-26
樓上不對(duì)吧,flag怎么能放在計(jì)時(shí)器里,如果放在計(jì)時(shí)器里跟沒有定義flag這個(gè)參數(shù)是一樣的,同樣會(huì)出現(xiàn)bug
2017-03-12
flag=true應(yīng)該定義在setInterval里面,
思路是這樣的:
1.每次復(fù)用都將flag設(shè)為true,
2.如果有未達(dá)到目標(biāo)的這時(shí)將flag覆蓋為false;
3.在結(jié)束前判斷flag為true 則清除
雖然width到達(dá)了目標(biāo),但是opacity未達(dá)到目標(biāo) flag 被覆蓋為 false,不能進(jìn)入clearInterval的判斷
只有當(dāng)所有的目標(biāo)達(dá)到時(shí),if(icurr != json[attr])的判斷無(wú)法進(jìn)入 flag 不能被設(shè)置為false,這時(shí)候flag為開始定義的true,隨后clearInterval將被執(zhí)行;
function Move(obj,json,fn){
????clearInterval(obj.timer)
????obj.timer = setInterval(function(){
????????var flag = true;//放在這里
????????for(var arr in json){