为了账号安全,请及时绑定邮箱和手机立即绑定

就是最后动画的封装,我的回调函数貌似不起作用,具体看代码。大神帮帮我。

var timer = null;

    var flag = true;

    function play(obj,json,fn){

        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 speed = (json[attr]-icur) /10;

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

                if (icur!=json[attr]) {

                    flag = false;

                }

                if (attr=='opacity') {

                    obj.style[attr] = 'alpha(opacity:'+(icur+speed)+')';

                    obj.style[attr] = (icur+speed) /100;

                }else{

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

                }

                if (flag) {

                    clearInterval(obj.timer);

                    if (fn) {

                        fn();

                    }

                }

            }

        },20);

    }

    function getStyle(obj,attr){

        if (obj.currentStyle) {

            return obj.currentStyle[attr];

        }else{

            return getComputedStyle(obj,false)[attr];

        }

    }

就是最后if判断flag为真的时候执行的回调函数,不起作用,求哪位大神帮帮我。


正在回答

举报

0/150
提交
取消

就是最后动画的封装,我的回调函数貌似不起作用,具体看代码。大神帮帮我。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信