码迷,mamicode.com
首页 > 其他好文 > 详细

定时器缓动动画

时间:2018-09-23 22:26:42      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:清除   初始   htm   事件   padding   fun   type   click   element   

定时器缓动动画公式:

  • 初始值+=(终止值-初始值) × 缓动系数

<!DOCTYPE html>
<html>
<head>
   <meat charset="utf-8">
   <title>缓动动画</title>
 <style>
           *{
               padding: 0;
               margin: 0;
           }
           body{
               background-color: #000;
           }
           #btn{
               width: 80px;
               height: 40px;
               font-size: 16px;
               color: red;
               border: 2px solid yellow;
               box-shadow: 0 0 10px blue;
               margin-top: 30px;
               margin-bottom: 30px;
               margin-left: 50%;
           }
           #box{
               width: 200px;
               height: 200px;
               background-color: red;
               border: 1px solid #ccc;
               box-shadow: 0 0 10px green;
               border-radius: 50%;
               margin-left: 5px;
           }
   </style>
</head>
<body>
     <button id="btn">开始运动</button>
     <div id="box"></div>
     <script>
            //监听按钮点击事件
            $("btn").onclick=function(){
                //定义变量
                var timer=null;
                var begin=0;
                var target=800;
                //清除定时器
                clearInterval(timer);
                //开启定时器
                timer=setInterval(function(){
                    //起始值+=(目标值-起始值)*缓动系数;
                    begin+=(target-begin)*0.5;
                    // console.log(Math.round(begin));
                    //判断
                    if(Math.round(begin)>=target){
                        begin = target;
                        clearInterval(timer);
                    }

                    //运动
                    $("box").style.marginLeft = begin+‘px‘;
                    
                },100);
            }
            function $(id){
                return typeof id==="string"?document.getElementById(id):null;
            }
     </script>
</body>
</html>

 

定时器缓动动画

标签:清除   初始   htm   事件   padding   fun   type   click   element   

原文地址:https://www.cnblogs.com/zhang-jiao/p/9693695.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!