function getStyle(obj,attr){ if(obj.currentStyle){ return obj.currentStyle[attr]; }else{ return getComputedStyle(obj,false)[attr]; }}//startMove(obj,{attr1:iTarget,attr2:iTarget},fn);var alpha = 30;function startMove(obj,json,fn){ var flag = true;//假設(shè) clearInterval(obj.timer); obj.timer=setInterval(function(){ for (var attr in json){ //1.取當(dāng)前值 var icur = 0; if(attr == 'opacity'){ icur = Math.round(parseFloat(getStyle(obj,attr))*100); }else{ icur=parseInt(getStyle(obj,attr)); } //2.算速度 var speed=(json[attr]-icur)/8; speed=speed>0?Math.ceil(speed):Math.floor(speed); //3.檢測(cè)停止 if(icur!=json[attr]){ flag = false; } if(attr == 'opacity'){ obj.style.filter = 'alpha(opacity:'+(icur + speed)+')' obj.style.opacity = (icur + speed)/100; }else{ obj.style[attr]=icur+speed+'px'; } } if(flag){ clearInterval(obj.timer); if(fn){ fn(); } } },30);}
關(guān)于《JS動(dòng)畫(huà)效果》課程的疑問(wèn),以下代碼無(wú)法進(jìn)行鏈?zhǔn)絼?dòng)畫(huà),原因是什么?
陳大魚(yú)頭
2016-04-12 16:21:35