JavaScript原生定时器实现动画的缓动效果,供大家参考,具体内容如下
原理很简单通过定时器修改边距达到移动动画效果
实现速度的变化
缓动必然移动速度会有变化,这里需要用到一个小公式或者说算法"htmlcode">
//ydjl:移动到指定位置 (obj.offsetLeft) function animate(obj,ydpx) { //清除定时器 防止每一次调用都产生一个定时器,叠加导致问题(速度变快) clearInterval(obj.timer); obj.timer=setInterval(function () { var step = (ydpx - obj.offsetLeft) / 10; //移动距离 //取整 step = step>0 "htmlcode"><!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .boks{ position: absolute; top: 300px; left:0; width: 100px; height: 100px; background-color: #ff0011; } </style> </head> <body> <button class="yd500">移动500px</button> <button class="yd800">移动800px</button> <div class="boks">hezi</div> </body> <script> function animate(obj,ydpx) { //清除定时器 clearInterval(obj.timer); obj.timer=setInterval(function () { var step = (ydpx - obj.offsetLeft) / 10; step = step>0 ".yd500"); var yd800 = document.querySelector(".yd800"); //盒子 var boks = document.querySelector(".boks"); yd500.addEventListener('click', function() { // 调用函数 animate(boks, 500); //传递要移动的对象 和 移动位置 }) yd800.addEventListener('click', function() { // 调用函数 animate(boks, 800); //传递要移动的对象 和 移动位置 }) </script> </html>萌新小白的学习记录
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
js,缓动
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com
暂无“JavaScript实现缓动动画”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。