Redchan
2016-04-19 09:21
function getStyle(obj,attr) {
if (obj.currentStyle) {
return obj.currentStyle[attr];
}
else{
return getComputedStyle(obj,false)[attr];
}
}
function startMove(obj,json,fn) {
var flag = true ;
clearInterval(obj.timer);
obj.timer=setInterval(function () {
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 ispeed=(json[attr]-icur)/8;
ispeed=ispeed>0?Math.ceil(ispeed):Math.floor(ispeed);
//检测停止
if(icur!=json[attr]) {
flag=false;
}
if(attr=='opacity') {
obj.style.filter='alpha(opacity:'+(icur+ispeed)+')';
obj.style.opacity=(icur+ispeed)/100;
}
else{
obj.style[attr]=icur+ispeed+'px';
}
}
if(flag){
clearInterval(obj.timer);
if(fn){
fn();
}
}
},30);
}
不知道,我有没有看错;
obj.attr 而不是obj, attr;
点和逗号;
一个传参数,一个查属性
JS动画效果
113925 学习 · 1443 问题
相似问题