zoukankan      html  css  js  c++  java
  • 任意对象的任意属性js动画

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <style>
    #demo{
    50px;
    height: 50px;
    background: red;
    position: absolute;
    }
    </style>
    </head>
    <body>
    <input id = "btn" type="button" value="点击">
    <div id="demo">

    </div>
    <script>
    var btn = document.getElementById("btn");
    var demo = document.getElementById("demo");
    btn.onclick = function(){
    animate(demo,{"width":500,"height":500});
    }
    function animate(obj,json){
    clearInterval(obj.timer);
    // leader = leader + step;
    // step = (target - leader)/10;
    obj.timer = setInterval(function(){
    for(var k in json){
    // 属性为K,值为json[k]
    var leader = parseInt(getstyle(obj,k)) || 0;
    var target = json[k];
    var step = (target - leader)/10;
    step = step > 0 ? Math.ceil(step) : Math.floor(step);
    leader = leader + step;
    obj.style[k] = leader + 'px';
    if(leader == target){
    clearInterval(obj.timer);
    }
    }
    },60);

    }
    function getstyle(obj,attr){
    if(obj.currentStyle){
    return obj.currentStyle[attr];//ie678
    }else{
    return window.getComputedStyle(obj,null)[attr];
    }
    }
    console.log(getstyle(demo,'width'));
    </script>
    </body>
    </html>

  • 相关阅读:
    git
    Flask 上传文件 IO错误
    对0位压缩的 ipv6,进行补全
    字符编码
    struct 模块,pack 和 unpack,用法详细说明
    MySQLdb 操作数据库
    字节Byte 与 位bit 的关系
    vim
    python 内置函数 char
    time,datetime 模块
  • 原文地址:https://www.cnblogs.com/niuniuniu/p/6376391.html
Copyright © 2011-2022 走看看