-
Math.round();四舍五入查看全部
-
計(jì)算機(jī)不能嚴(yán)格精確的存儲小數(shù) 如0.07*100,不能得到7,而是7.00000000000001查看全部
-
parseInt(getStyle(obj,'width'))查看全部
-
function getStyle(obj,attr) { if(obj.currentStyle){ return obj.currentStyle; } else { return getComputedStyle(obj,'false')[attr]; } } 定義getStyle函數(shù),兼容IE和其他瀏覽器查看全部
-
獲取樣式IE和其他瀏覽器查看全部
-
多物體運(yùn)動(dòng)透明度漸變時(shí),不能公用一個(gè)透明度參數(shù)查看全部
-
多物體動(dòng)畫不能共用一個(gè)定時(shí)器。查看全部
-
緩沖運(yùn)動(dòng),如果速度的值可能出現(xiàn)小數(shù)點(diǎn),記得要取整: Math.floor(); 向下取整 Math.ceil(); 向上取整查看全部
-
透明度漸變:定義一個(gè)變量的值如:alpha來與目標(biāo)透明度值進(jìn)行比較。查看全部
-
filter:alpha(opacity:30); /*IE低級瀏覽器設(shè)置透明度*/ opacity: 0.3; /*其他瀏覽器設(shè)置透明度*/查看全部
-
當(dāng)前目標(biāo)li運(yùn)動(dòng),用到this,表示當(dāng)前,使用函數(shù)參數(shù)查看全部
-
記住了查看全部
-
速度小數(shù)點(diǎn),需要取整,不然容易出錯(cuò)查看全部
-
function startMove(obj,json,fn){ clearInterval(obj.timer); obj.timer=setInterval(function(){ var flag=true; //標(biāo)志所有運(yùn)動(dòng)是否到達(dá)目標(biāo)值 for(var attr in json){ var curr=0; //獲取當(dāng)前的值,設(shè)置為0下面進(jìn)行賦值 //判斷是否為透明度 if(attr=='opacity'){ curr=Math.round(parseFloat(getStyle(obj,attr))*100); //對透明度處理 }else{ curr=parseInt(getStyle(obj,attr)); //對普通的寬高處理 } //移動(dòng)速度處理 var speed=0; speed=(json[attr]-curr)/8; //json[attr]為屬性值即目標(biāo)值 speed=speed>0?Math.ceil(speed):Math.floor(speed); //取整數(shù),將速度取整從而達(dá)到目標(biāo)值 //檢測停止 if(curr!= json[attr]){ flag=false;//檢測為false則繼續(xù)下面的操作 } if (attr=='opacity') { obj.style.filter='alpha(opacity:'+(curr+speed)+’)’;//IE瀏覽器 obj.style.opacity=(curr+speed)/100;//firefox瀏覽器 }else{ obj.style[attr]=curr+speed+'px'; } } if(flag){ //檢測為true則繼續(xù)下面的操作 clearInterval(obj.timer); if(fn){ //檢測是否有回調(diào)函數(shù),有就執(zhí)行 fn(); } } },30); } //取樣式 function getStyle(obj,attr){ if(obj.currentStyle){ return obj.currentStyle[attr]; //IE取樣式 }else{ return getComputedStyle(obj,false)[attr]; } }查看全部
-
運(yùn)動(dòng)框架大概的實(shí)現(xiàn)思路查看全部
舉報(bào)
0/150
提交
取消