zoukankan      html  css  js  c++  java
  • 完美运动框架

    function getStyle(obj, name) {
        if (obj.currentStyle) {
            return obj.currentStyle[name];
        }
        else {
            return getComputedStyle(obj, false)[name];
        }
    }
    
    //startMove(oDiv, {400, height:400})
    
    function startMove(obj, json, fnEnd) {
        clearInterval(obj.timer);
        obj.timer = setInterval(function () {
            var bStop = true;//假设所有的值都已经到了
    
            //根据运动框架改动,不同的地方
            for (var attr in json) {
                var cur = 0; //parseInt(getStyle(obj, attr));
                if (attr == 'opacity') {
                    cur = Math.round(parseFloat(getStyle(obj, attr)) * 100);
                }
                else {
                    cur = parseInt(getStyle(obj, attr));
                }
    
                var speed = (json[attr] - cur) / 6;
                speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
    
                if (cur != json[attr])
                    bStop = false;
    
                if (attr == 'opacity') {
                    obj.style.filter = 'alpha(opacity:' + (cur + speed) + ')';//IE使用
                    obj.style.opacity = (cur + speed) / 100;//chrome和FF使用
                }
                else {
                    obj.style[attr] = cur + speed + 'px';
                }
           }
            //最后判断是否都到了,如果都到了,停止计数器
            if (bStop) {
                clearInterval(obj.timer);
                //alert('ok');
                if (fnEnd) fnEnd();
            }
    
        }, 30);
    }
  • 相关阅读:
    并发编程-操作系统简史,多道技术
    python下的excel表格处理 内含面试题
    epoll模型的探索与实践
    nginx搭建静态网站
    面向对象基础
    python+Django 下JWT的使用
    linux的history命令
    携程apollo配置中心Quick Start
    redis哨兵
    redis的主从复制
  • 原文地址:https://www.cnblogs.com/bedfly/p/12322565.html
Copyright © 2011-2022 走看看