首页 > 其他 > 详细

move组件

时间:2015-12-18 21:12:27      阅读:265      评论:0      收藏:0      [点我收藏+]
function move(obj,json,time,fn)
    {
        var start={};
        var dis={};
        for (var name in json)
        {
            start[name]=parseFloat(getStyle(obj,name));
            dis[name]=json[name]-start[name];
        }

        var n=0;
        var count=Math.floor(time/30);
        clearInterval(obj.timer);//自定义属性里可以存任何东西  每个obj有一个自己的timer
        obj.timer=setInterval(function (){
            n++;
            for (var name in json)
            {
                if (name==‘opacity‘)
                {
                    obj.style[name]=start[name]+dis[name]*n/count;
                }
                else
                {
                    obj.style[name]=start[name]+dis[name]*n/count+‘px‘;
                }   
            }

            if (n==count)
            {
                clearInterval(obj.timer);
                fn && fn();
            }
        },30);
    }
    function getStyle(obj,sName)
    {
        return (obj.currentStyle || getComputedStyle(obj,false))[sName];
    }

  

move组件

原文:http://www.cnblogs.com/agosto/p/5058096.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!