//缓冲运动框架 (对象,{ 属性:值 },速度,回调函数)
function startMove(obj,json,num,fnEnd){
clearInterval(obj.timer);
obj.timer = setInterval(function(){
var onoff = true;
for(var attr in json){
var cur = 0;
//兼容透明
if(attr == 'opacity'){
cur = Math.round(parseFloat(getStyle(obj,attr)) * 100);
}else{
cur = parseInt(getStyle(obj,attr));
}
var speed = (json[attr] - cur) / num;
speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
if(cur != json[attr]) onoff = false;
if(attr == 'opacity'){
obj.style.filter = 'alpha(opacity:' + (cur + speed) + ')';
obj.style.opacity = (cur + speed) / 100;
}else{
obj.style[attr] = cur + speed + 'px';
}
}
if(onoff){
clearInterval(obj.timer);
if(fnEnd) fnEnd();
}
},30);
}
JS - 缓冲运动框架
最新推荐文章于 2024-04-19 09:56:59 发布