function startMove(obj,json,fn){
clearInterval(obj.timer);
var iCur = 0;
obj.timer = setInterval(function(){
//定时器 没走一下 ,就要把运动的属性都推进一次
var iBtn = true;
var speed = 0;
for(var attr in json) {
if (attr == 'opacity') {
iCur = Math.round(getStyle(obj, 'opacity') * 100);
} else {
iCur = parseInt(getStyle(obj, attr));
}
speed = (json[attr]-iCur)/8;
speed = speed>0?Math.ceil(speed):Math.floor(speed);
//当前 数值 和 目标数值
if (iCur != json[attr]) {
iBtn = false; //没走完目标点 设置为false
if (attr == 'opacity') {
obj.style.opacity = (iCur + speed) / 100;
obj.style.filter = 'alpha(opacity=' + (iCur + speed) + ');'
} else {
obj.style[attr] = iCur + speed + 'px';
}
}
}
//在这里看一下 所有属性是不是都到了目标点
if(iBtn){
clearInterval(obj.timer);
fn&& fn.call(obj);
}
},30);
}
function getStyle(obj,attr){
return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,false)[attr];
}
clearInterval(obj.timer);
var iCur = 0;
obj.timer = setInterval(function(){
//定时器 没走一下 ,就要把运动的属性都推进一次
var iBtn = true;
var speed = 0;
for(var attr in json) {
if (attr == 'opacity') {
iCur = Math.round(getStyle(obj, 'opacity') * 100);
} else {
iCur = parseInt(getStyle(obj, attr));
}
speed = (json[attr]-iCur)/8;
speed = speed>0?Math.ceil(speed):Math.floor(speed);
//当前 数值 和 目标数值
if (iCur != json[attr]) {
iBtn = false; //没走完目标点 设置为false
if (attr == 'opacity') {
obj.style.opacity = (iCur + speed) / 100;
obj.style.filter = 'alpha(opacity=' + (iCur + speed) + ');'
} else {
obj.style[attr] = iCur + speed + 'px';
}
}
}
//在这里看一下 所有属性是不是都到了目标点
if(iBtn){
clearInterval(obj.timer);
fn&& fn.call(obj);
}
},30);
}
function getStyle(obj,attr){
return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,false)[attr];
}