缓冲运动

 1 var timer = null;
 2 
 3     function startMove(iTarget){
 4         var oDiv = document.getElementById('div1');
 5         //h缓冲运动的核心是距离与速度成正比,同时一定需要用到函数取整
 6         clearInterval(timer);
 7         timer = setInterval(function(){
 8             //速度与距离成正比,达到缓冲运动的条件
 9             var speed = (iTarget-oDiv.offsetLeft)/10;
10             //距离为正,是向上取整,距离向下 是向下取整
11             speed =speed>0?Math.ceil(speed):Math.floor(speed);
12 
13             if (oDiv.offsetLeft>=iTarget) {//是否到达终点
14                 clearInterval(timer);//到达终点
15             } else{
16                 oDiv.style.left = oDiv.offsetLeft+speed+'px';
17                 //到达之前
18             };
19         },30);
20 
21     }
原文地址:https://www.cnblogs.com/xs-yqz/p/4486736.html