博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js动画学习(二)
阅读量:5302 次
发布时间:2019-06-14

本文共 832 字,大约阅读时间需要 2 分钟。

四、简单动画之缓冲运动

     

      实现速度的缓冲,即不同位置的速度不同,越靠近目标值速度越小,所以速度值与目标值与当前值之差成正比。这里要注意一个问题就是物体在运动中速度是连续变化的,不是按照整数变化的,当物体停止时由于小数的原因,位置可能不会回到原起点,会差一点,所以缓冲运动里变化的速度要取整。

1 //鼠标移到元素上元素右移,鼠标离开元素回去。 2 var timer=""; 3 function Move(locat) {
//移动终点位置 4 var ob=document.getElementById('box1'); 5 clearInterval(timer); 6 timer=setInterval(function () { 7 var speed=(locat-ob.offsetLeft)/10;//speed的大小和移动距离成正比,分母控制缓冲的快慢,即比例系数K,可调整 8 speed=speed>0?Math.ceil(speed):Math.floor(speed);//凡是缓冲运动速度一定要取整!!!向右运动时坐标向上取整,向左运动时坐标向下取整 9 if (ob.offsetLeft==locat) {
//当前位置到达指定终点,关闭定时器10 clearInterval(timer); 11 } else {12 ob.style.left=ob.offsetLeft+speed+'px';13 }14 }, 30)15 }

      在下面的HTML文档里调用上面的JS函数。还用上次的那个div为例:

1 
1 
2

 

转载于:https://www.cnblogs.com/csxiaoyu/p/5203436.html

你可能感兴趣的文章
在16aspx.com上下了一个简单商品房销售系统源码,怎么修改它的默认登录名和密码...
查看>>
c++回调函数
查看>>
linux下Rtree的安装
查看>>
【Java】 剑指offer(53-2) 0到n-1中缺失的数字
查看>>
Delphi中ListView类的用法
查看>>
多米诺骨牌
查看>>
Linq 学习(1) Group & Join--网摘
查看>>
asp.net 调用前台JS调用后台,后台掉前台JS
查看>>
Attribute(特性)与AOP
查看>>
苹果手表:大方向和谷歌一样,硬件分道扬镳
查看>>
Competing Consumers Pattern (竞争消费者模式)
查看>>
Android面试收集录15 Android Bitmap压缩策略
查看>>
PHP魔术方法之__call与__callStatic方法
查看>>
ubuntu 安装后的配置
查看>>
web前端之路,js的一些好书(摘自聂微东 )
查看>>
【模板】对拍程序
查看>>
【转】redo与undo
查看>>
解决升级系统导致的 curl: (48) An unknown option was passed in to libcurl
查看>>
Java Session 介绍;
查看>>
spoj TBATTLE 质因数分解+二分
查看>>