老師flag的定義會(huì)不會(huì)有錯(cuò),flag變FALSE 就在變不回TRUE了
flag的定義會(huì)不會(huì)有錯(cuò)? 執(zhí)行一次后flag變成FALSE,之后flag的值就在不改變了呀 怎么可能會(huì)去清除定時(shí)器
flag的定義會(huì)不會(huì)有錯(cuò)? 執(zhí)行一次后flag變成FALSE,之后flag的值就在不改變了呀 怎么可能會(huì)去清除定時(shí)器
2016-05-13
舉報(bào)
2016-05-14
那個(gè)確實(shí)寫錯(cuò)了,應(yīng)該把flag寫進(jìn)定時(shí)器里
2016-06-05
falg要放在定時(shí)器里面,不然每次重新執(zhí)行定時(shí)器就不會(huì)更新為true.( if(flag)要在for循環(huán)外面)
2016-05-30
flag必然會(huì)變回true的因?yàn)槎〞r(shí)器如果不關(guān)閉就會(huì)無限的重復(fù)執(zhí)行,每次執(zhí)行后就相當(dāng)于又給flag賦值成true了
2016-05-17
以上都是我自己的理解? 錯(cuò)誤還是正確我也不知道
2016-05-17
像你這么寫 和老師這么寫都是一樣的。因?yàn)槎际窃诤瘮?shù)里面定義的,flag都是局部變量,由于閉包和作用域所以都能讀取到這個(gè)變量。
2016-05-17
我的理解? 在還沒有全部到達(dá) itarget之前,flag始終為false,當(dāng)所有attr到達(dá)itarget時(shí)此時(shí)需要清除定時(shí)器,而清除定時(shí)器的條件是flag為true? 。(為什么flag能變化是因?yàn)橛卸〞r(shí)器,每30ms就會(huì)更新里面的數(shù)據(jù)。)
2016-05-15
obj.timer=setInterval(function () {
? ? ? ?var flg =true; ?//像這樣嗎? ?感覺也不對(duì),flag變false后,還是不會(huì)再變回true呀?
? ? ? ?for (var attr in json) {
? ? ? ? ? ?//獲取當(dāng)前值
? ? ? ? ? ?var icur = 0;
? ? ? ? ? ?if (attr == 'opacity') {
? ? ? ? ? ? ? ?icur = Math.round(parseFloat(getStyle(obj, attr)) * 100);
? ? ? ? ? ?}
? ? ? ? ? ?else {
? ? ? ? ? ? ? ?icur = parseInt(getStyle(obj, attr));
? ? ? ? ? ?}
? ? ? ? ? ?//算速度
? ? ? ? ? ?var speed = 0;
? ? ? ? ? ?speed = (json[attr] - icur) / 8;
? ? ? ? ? ?speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
? ? ? ? ? ?//檢測(cè)停止
? ? ? ? ? ?if (icur != json[attr]) {
? ? ? ? ? ? ? ?flg=false;
? ? ? ? ? ?}
? ? ? ? ? ?if (attr == 'opacity') {
? ? ? ? ? ? ? ? ? ?//針對(duì)IE瀏覽器
? ? ? ? ? ? ? ? ? ?obj.style.filter = 'alpha(opacity:' + (icur + speed) + ')';
? ? ? ? ? ? ? ? ? ?//針對(duì)其他
? ? ? ? ? ? ? ? ? ?obj.style.opacity = (icur + speed) / 100;
? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ?else {
? ? ? ? ? ? ? ? ? ?obj.style[attr] = icur + speed + 'px';
? ? ? ? ? ? ? ?}
? ? ? ? ? ? }
? ? ? ?if (flg){
? ? ? ? ? ?clearInterval(obj.timer);
? ? ? ? ? ?if (fn){
? ? ? ? ? ? ? ?fn()
? ? ? ? ? ?}
? ? ? ?}
? ?},30)
}
像這樣嗎? ?感覺也不對(duì),flag變false后,還是不會(huì)再變回true呀?郁悶呀,這邏輯不對(duì)呀