move.js说我第二行 Uncaught TypeError: Cannot read property 'currentStyle' of undefined

来源:5-1 JS链式动画

MY裴秀智4043005

2016-12-11 10:54

function getStyle(obj,attr){

if (obj.currentStyle) {

return obj.currentStyle[attr];

}

else{

return getComputedStyle(obj,false)[attr];

}

}



function startMove(obj,attr,iTarget,fn){

clearInterval(obj.timer);

obj.timer =setInterval(function(){

var icur = 0;

if (attr =='opacity') {

icur = Math.round( parseFloat(getStyle(obj.attr))*100);

}

else{

icur = parseInt(getStyle(obj,attr));

}

var speed =(iTarget-icur)/8;

speed=speed>0?Math.ceil(speed):Math.floor(speed);

if (icur==iTarget) {

clearInterval(obj.timer);

if (fn) {

fn();

}

}

else{

if (attr=='opacity') {

obj.style.filter='alpha(opacity:'+(icur+speed)+')';

obj.style.opacity =(icur+speed)/100;

}

else{

obj.style[attr] =icur+speed+'px';

}

}

},30)

}



写回答 关注

3回答

  • 慕先生6645173
    2016-12-12 18:35:13

    兼容性问题吧

  • _爱健身的码农_03883871
    2016-12-12 16:25:05

     传值得问题,你用console.log()检查一下调用getStyle函数那个值有值没用

  • 五更人_
    2016-12-12 15:57:15

    应该是浏览器问题吧  

JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113925 学习 · 1443 问题

查看课程

相似问题