• js运动 多数据运动 含JSON


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>无标题文档</title>
    <style>
    #div1 {100px; height: 100px; background: red; position: absolute; left: 0px; top: 30px; left: 400px;}
    </style>
    <script>
    window.onload = function() {
        
        var oDiv1 = document.getElementById('div1');
        
        oDiv1.onclick = function() {
            //下面的运动会清除掉上面的定时器
            /*startMove(this, 'width', 200, 10);
            startMove(this, 'height', 200, 10);*/
            
            startMove(this, {
                width : 200,
                height: 200
            }, 10);
        }
        
        function startMove(obj, json, iSpeed) {
            clearInterval(obj.iTimer);
            var iCur = 0;
                
            obj.iTimer = setInterval(function() {
                //定时器每走一下,就要把要运动的属性都推进一次
                
                for ( var attr in json ) {
                    
                    var iTarget = json[attr];
                    
                    if (attr == 'opacity') {
                        iCur = Math.round(css( obj, 'opacity' ) * 100);
                    } else {
                        iCur = parseInt(css(obj, attr));
                    }
                    
                    if (iCur == iTarget) {
                        clearInterval(obj.iTimer);
                    } else {
                        if (attr == 'opacity') {
                            obj.style.opacity = (iCur + iSpeed) / 100;
                            obj.style.filter = 'alpha(opacity='+ (iCur + iSpeed) +')';
                        } else {
                            obj.style[attr] = iCur + iSpeed + 'px';
                        }
                    }
                    
                }
                
            }, 30);
        }
        
        function css(obj, attr) {
            if (obj.currentStyle) {
                return obj.currentStyle[attr];
            } else {
                return getComputedStyle(obj, false)[attr];
            }
        }
        
    }
    </script>
    </head>
    
    <body>
        <div id="div1"></div>
    </body>
    </html>
  • 相关阅读:
    L3002 特殊堆栈
    L3007 天梯地图
    L3004 肿瘤诊断
    Linux常用笔记
    微信红包测试用例
    Ubuntu21 bluetooth connects to freebuds pro freebuds耳机Ubuntu21连接失败
    Freebuds Connnect Problem in the Windows Freebuds耳机windows10连接失败
    Ubuntu21 kernal5.13 Nvidia960M驱动安装系统安装
    Linux进程间通信
    Zeppelin返回503问题
  • 原文地址:https://www.cnblogs.com/mayufo/p/4328752.html
Copyright © 2020-2023  润新知