js学使用setTimeout实现轮循动画
作者:diasa
这篇文章主要为大家详细介绍了js使用setTimeout实现轮循动画,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了setTimeout实现轮循动画的具体代码,供大家参考,具体内容如下
代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div id='box'></div> <script> var oBox = document.getElementById("box"); var maxLeft = utils.win('clientWidth')-oBox.offsetWidth; var step = 5; var timer = null; //使用递归思想完成setTimeout的轮循动画:每一次在执行动画之前把上一次设置没用的定时器清除掉,节约我们的内存空间 function move(){ window.clearTimeout(timer); var curLeft = utils.css(oBox,"left"); if(curLeft+step >= maxLeft){//边界判断 utils.css(oBox,"left",maxLeft); return; } curLeft+=step; utils.css(oBox,"left",curLeft); timer = window.setTimeout(move,10) } move(); </script> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- JavaScript使用setTimeout实现倒计时效果
- JavaScript setTimeout()基本用法有哪些
- JavaScript setInterval()与setTimeout()计时器
- 简单通过settimeout看javascript的运行机制
- 如何通过setTimeout理解JS运行机制详解
- 从setTimeout看js函数执行过程
- JavaScript计时器用法分析【setTimeout和clearTimeout】
- 详解JS中定时器setInterval和setTImeout的this指向问题
- JavaScript中setTimeout的那些事儿
- JS关于for循环中使用setTimeout的四种解决方案