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 相关文章推荐
dojo 之基础篇(二)之从服务器读取数据
Mar 24 Javascript
Javascript 二维数组
Nov 26 Javascript
9个JavaScript评级/投票插件
Jan 18 Javascript
Chrome Form多次提交表单问题的解决方法
May 09 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
Nov 28 Javascript
AngularJS基础知识笔记之过滤器
May 10 Javascript
Node.js connect ECONNREFUSED错误解决办法
Sep 15 Javascript
JQuery遍历元素的后代和同胞实现方法
Sep 18 Javascript
JavaScript生成.xls文件的代码
Dec 22 Javascript
AngularJS常见过滤器用法实例总结
Jul 06 Javascript
基于Datatables跳转到指定页的简单实例
Nov 09 Javascript
原生JS封装vue Tab切换效果
Apr 28 Vue.js
详解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
TMDPHP 模板引擎使用教程
2012/03/13 PHP
PHP微信开发用Cache 解决数据缓存
2016/07/11 PHP
详解laravel安装使用Passport(Api认证)
2018/07/27 PHP
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
使用JavaScript进行进制转换将字符串转换为十进制
2014/09/21 Javascript
如何利用AngularJS打造一款简单Web应用
2015/12/05 Javascript
javascript使用 concat 方法对数组进行合并的方法
2016/09/08 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
2017/04/18 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
Javascript实现倒计时时差效果
2017/05/18 Javascript
JavaScript中使用Async实现异步控制
2017/08/15 Javascript
使用vue-aplayer插件时出现的问题的解决
2018/03/02 Javascript
JS实现在线ps功能详解
2019/07/31 Javascript
es6函数name属性功能与用法实例分析
2020/04/18 Javascript
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python二叉树的实现实例
2013/11/21 Python
python实现巡检系统(solaris)示例
2014/04/02 Python
Python实现在线程里运行scrapy的方法
2015/04/07 Python
python实现二分查找算法
2017/09/21 Python
基于python中__add__函数的用法
2019/11/25 Python
一文了解python 3 字符串格式化 F-string 用法
2020/03/04 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
英国名牌男装店:Standout
2021/02/17 全球购物
一家外企的面试题目(C/C++面试题,C语言面试题)
2014/03/24 面试题
光荣入党自我鉴定
2014/01/22 职场文书
市场营销专业求职信
2014/06/17 职场文书
2014年保安个人工作总结
2014/11/13 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
师德标兵事迹材料
2014/12/19 职场文书
2016计划生育先进个人事迹材料
2016/02/29 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang
nginx静态资源的服务器配置方法
2022/07/07 Servers