//匀速运动的封装
function animate(obj,target,speedTime = 20){
//第一个参数为对象,第二个参数是运动的目标值,第三个参为匀速的时间间隔
clearInterval(obj.timer);
//清除上一次的定时器
obj.timer = setInterval(function(){
//设置定时器保存对象运动的时间
var speed = target -obj.offsetLeft > 0 ? 5 : -5;
//这里设置它的运动距离以及方向,最后一次运动时,每次移动的距离 =目标值-他的实际运动值,
//如果每次移动的距离大于0,说明物体往右走,此时,移动距离取5,相反的时候取-5
if(Math.abs(target - obj.offsetLeft) < 5){
//在这里取绝对值控制它运动的距离,只要小于5就可以继续运动,这样就不会让目标值只可以取5的参数
obj.style.left = target + "px";
//当他的 物体运动的距离 = 他的目标距离时,即到达目的地
clearInterval(timer);
//清除本次定时器,停止此次匀速运动
}else{
obj.style.left = obj.offsetLeft + speed + "px";
//物体的距离 = 实际运动的值 + 每次移动的距离;程序执行一次此处,物体便移动一次
}
},speedTime)
}