慕仙7258121
2016-03-22 16:42
2729379229@qq.com
function startMove(obj,json,fn){
clearInterval(obj.timer);
obj.timer=setInterval(function(){
var flag=true;
for(var attr in json){
var icur=0;
if (attr=="opacity") {
icur=Math.round(parseFloat(getStyle(obj,attr))*100);
}
else{
icur=parseInt(getStyle(obj,attr));
}
var speed=(json[attr]-icur)/8;
speed=speed>0?Math.ceil(speed):Math.floor(speed);
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)
}
//获取行内元素
function getStyle(obj,attr){
//针对IE浏览器
if(obj.currentStyle){
return obj.currentStyle[attr];
}
//针对Firefox浏览器
else{
return getComputedStyle(obj,false)[attr];
}
}
JS动画效果
113920 学习 · 1494 问题
相似问题