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 相关文章推荐
js中的window.open返回object的错误的解决方法
Aug 15 Javascript
jquery按回车提交数据的代码示例
Nov 05 Javascript
js禁止回车提交表单的示例代码
Dec 23 Javascript
事件委托与阻止冒泡阻止其父元素事件触发
Sep 02 Javascript
jQuery EasyUI中DataGird动态生成列的方法
Apr 05 Javascript
浅析JS异步加载进度条
May 05 Javascript
JavaScript toUpperCase()方法使用详解
Aug 26 Javascript
对angularJs中controller控制器scope父子集作用域的实例讲解
Oct 08 Javascript
解决layui laydate 时间控件一闪而过的问题
Sep 28 Javascript
jQuery实现轮播图效果demo
Jan 11 jQuery
JS co 函数库的含义和用法实例总结
Apr 08 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
Sep 22 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
全国FM电台频率大全 - 25 云南省
2020/03/11 无线电
用PHP连接Oracle for NT 远程数据库
2006/10/09 PHP
利用discuz自带通行证整合dedecms的方法以及文件下载
2007/03/06 PHP
我的php学习笔记(毕业设计)
2012/02/21 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
jquery制作搜狐快站页面效果示例分享
2014/02/21 Javascript
JQuery中上下文选择器实现方法
2015/05/18 Javascript
jQuery实现非常实用漂亮的select下拉菜单选择效果
2015/11/06 Javascript
Angular实现form自动布局
2016/01/28 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
JavaScript正则获取地址栏中参数的方法
2017/03/02 Javascript
微信小程序 实现列表项滑动显示删除按钮的功能
2017/04/13 Javascript
Nodejs中使用captchapng模块生成图片验证码
2017/05/18 NodeJs
JS获取短信验证码倒计时的实现代码
2017/05/22 Javascript
vue使用axios跨域请求数据问题详解
2017/10/18 Javascript
vue中使用localstorage来存储页面信息
2017/11/04 Javascript
bootstrap中selectpicker下拉框使用方法实例
2018/03/22 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
vue使用高德地图根据坐标定位点的实现代码
2019/08/22 Javascript
Python随机生成一个6位的验证码代码分享
2015/03/24 Python
python读文件保存到字典,修改字典并写入新文件的实例
2018/04/23 Python
Python实现的计算器功能示例
2018/04/26 Python
python对常见数据类型的遍历解析
2019/08/27 Python
python实现最大优先队列
2019/08/29 Python
jupyter notebook参数化运行python方式
2020/04/10 Python
python开发前景如何
2020/06/11 Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
2021/02/01 Python
requests在python中发送请求的实例讲解
2021/02/17 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
国际贸易毕业生求职信范文
2014/02/21 职场文书
课例研修方案
2014/05/31 职场文书
技术经济专业求职信
2014/09/03 职场文书
学生抄袭作业的检讨书
2014/10/02 职场文书
北京故宫导游词
2015/01/31 职场文书
导游词之镇江焦山
2019/11/21 职场文书