js学使用setTimeout实现轮循动画


Posted in Javascript onJuly 17, 2017

本文实例为大家分享了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 相关文章推荐
node.js中的fs.fstat方法使用说明
Dec 15 Javascript
js实现左侧网页tab滑动门效果代码
Sep 06 Javascript
异步JS框架的作用以及实现方法
Oct 29 Javascript
js前端面试题及答案整理(一)
Aug 26 Javascript
详解jQuery lazyload 懒加载
Dec 19 Javascript
Vee-Validate的使用方法详解
Sep 22 Javascript
vue+Java后端进行调试时解决跨域问题的方式
Oct 19 Javascript
JavaScript插件Tab选项卡效果
Nov 14 Javascript
React.js绑定this的5种方法(小结)
Jun 05 Javascript
使用D3.js+Vue实现一个简单的柱形图
Aug 05 Javascript
详解关于vue2.0工程发布上线操作步骤
Sep 27 Javascript
javascript中的数据类型检测方法详解
Aug 07 Javascript
详解Vue2.x-directive的学习笔记
Jul 17 #Javascript
javascript  数组排序与对象排序的实例
Jul 17 #Javascript
jQuery常用选择器详解
Jul 17 #jQuery
js轮播图的插件化封装详解
Jul 17 #Javascript
Vue.js中extend选项和delimiters选项的比较
Jul 17 #Javascript
Vue.js中组件中的slot实例详解
Jul 17 #Javascript
Vue.js上下滚动加载组件的实例代码
Jul 17 #Javascript
You might like
PHP安全编程之加密功能
2006/10/09 PHP
PHP学习 变量使用总结
2011/03/24 PHP
3种php生成唯一id的方法
2015/11/23 PHP
javascript 模式设计之工厂模式学习心得
2010/04/27 Javascript
javascript的字符串按引用复制和传递,按值来比较介绍与应用
2012/12/28 Javascript
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
javascript类型转换示例
2014/04/29 Javascript
基于JavaScript短信验证码如何实现
2016/01/24 Javascript
深入剖析JavaScript中的函数currying柯里化
2016/04/29 Javascript
js基于setTimeout与setInterval实现多线程
2016/06/17 Javascript
AngularJS基础 ng-init 指令简单示例
2016/08/02 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
2016/08/15 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
javascript 秒表计时器实现代码
2017/03/09 Javascript
浅谈JS获取元素的N种方法及其动静态讨论
2017/08/25 Javascript
Angular使用cli生成自定义文件、组件的方法
2018/09/04 Javascript
JavaScript实现星级评价效果
2019/05/17 Javascript
微信小程序用户授权、位置授权及获取微信绑定手机号
2019/07/18 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
2018/12/20 Python
python的time模块和datetime模块实例解析
2019/11/29 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
selenium 多窗口切换的实现(windows)
2020/01/18 Python
Python如何使用paramiko模块连接linux
2020/03/18 Python
python中round函数保留两位小数的方法
2020/12/04 Python
什么是唯一索引
2015/07/05 面试题
小学清明节活动方案
2014/03/08 职场文书
竞选大队长演讲稿
2014/04/29 职场文书
学生鉴定评语大全
2014/05/05 职场文书
关于雷锋的演讲稿
2014/05/10 职场文书
个人委托书如何写
2014/09/25 职场文书
学习普通话的体会
2014/11/07 职场文书
2015年护士医德医风自我评价
2015/03/03 职场文书
优秀党员主要事迹材料
2015/11/04 职场文书
严以律己专题学习研讨会发言材料
2015/11/09 职场文书