• 缓动动画


    缓动动画就是让元素运动速度有所变化,最常见的是让速度慢慢停下来。

    思路:

    1.让盒子每次移动的距离慢慢变小,速度就会慢慢落下来;

    2.核心算法:(目标值-现在的位置)/10 , 作为每次移动的距离步长;

    3.停止的条件是: 让当前盒子位置等于目标位置时就停止定时器。

    效果:

    代码:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3     <head>
     4         <meta charset="UTF-8">
     5         <title>缓动动画</title>
     6         <style>
     7             *{
     8                 margin: 0;
     9                 padding: 0;
    10             }
    11             div{
    12                 position: absolute;
    13                 left: 0;
    14                 top: 100px;
    15                 width: 100px;
    16                 height: 100px;
    17                 background-color: yellow;
    18             }
    19         </style>
    20     </head>
    21     <body>
    22         <div></div>
    23         <button>按钮</button>
    24         <script>
    25             function animate(obj, target){
    26                 clearInterval(obj.timer);
    27                 obj.timer = setInterval(function(){
    28                     //计算步长值
    29                     var step = (target - obj.offsetLeft) / 10;
    30                     if(obj.offsetLeft >= target){
    31                         // 停止动画本质上是停止定时器
    32                         clearInterval(obj.timer);
    33                     }
    34                     obj.style.left = obj.offsetLeft + step + 'px';
    35                 },10);
    36             }
    37             var div = document.querySelector('div');
    38             var btn = document.querySelector('button');
    39             //调用函数
    40 
    41             btn.addEventListener('click', function(){
    42                 animate(div, 550);
    43             });
    44         </script>
    45     </body>
    46 </html>
  • 相关阅读:
    Spider 爬虫
    python 数据分析几个重要点!!!
    python 接口开发<小demo>
    python 运维那些事儿~ <转>
    centos7 Docker 安装 (转)
    centos7+nginx+uwsgi+python3+django
    linux 用户组 文件权限
    Linux 进阶命令(二)转
    centos7 vi命令
    基于UDP协议的socket套接字编程
  • 原文地址:https://www.cnblogs.com/cy1227/p/13089504.html
Copyright © 2020-2023  润新知