Angular.js中定时器循环的3种方法总结


Posted in Javascript onApril 27, 2017

本文主要设计定时器的三种循环,模板自配,下面分享给大家供大家参考,具体如下:

1、$interlval实现,比较简单和原生js的setInterval比较相似

var app = angular.module('myApp',[]);
app.run(function($rootScope , $interval){
 var img=["http://hdn.xnimg.cn/photos/hdn321/20130612/2235/h_main_NNN4_e80a000007df111a.jpg" ,"http://ww2.sinaimg.cn/crop.0.0.1080.1080.1024/d773ebfajw8eum57eobkwj20u00u075w.jpg","http://h.hiphotos.baidu.com/zhidao/pic/item/3812b31bb051f81991b9d8dbdcb44aed2f73e787.jpg"]
 var i = 0;
 var timer = $interval(function(){
  if(i >= img.length){
   i = 0;
  }
  $rootScope.imgSrc = img[i++];
 },1000)
});

2、$timeout的递归调用来实现

app.run(function($rootScope,$timeout){
 var img=["http://hdn.xnimg.cn/photos/hdn321/20130612/2235/h_main_NNN4_e80a000007df111a.jpg" ,"http://ww2.sinaimg.cn/crop.0.0.1080.1080.1024/d773ebfajw8eum57eobkwj20u00u075w.jpg","http://h.hiphotos.baidu.com/zhidao/pic/item/3812b31bb051f81991b9d8dbdcb44aed2f73e787.jpg"]
 var i = 0;
 $rootScope.c = 0;
 var loop = function(){
  $timeout(function(){
   if(i >= img.length){
    i = 0;
   }
   $rootScope.imgSrc=img[i++];
   loop();
   $rootScope.c += 1;
  },2000)
 };
 loop();
})

3、$timeout借助arguments.callee来实现

app.run(function($rootScope,$timeout){
 var img=["http://hdn.xnimg.cn/photos/hdn321/20130612/2235/h_main_NNN4_e80a000007df111a.jpg" ,"http://ww2.sinaimg.cn/crop.0.0.1080.1080.1024/d773ebfajw8eum57eobkwj20u00u075w.jpg","http://h.hiphotos.baidu.com/zhidao/pic/item/3812b31bb051f81991b9d8dbdcb44aed2f73e787.jpg"]
 var i = 0;
 $rootScope.c = 0;
 var loop = function(){
  $timeout(function(){
   if(i >= img.length){
    i = 0;
   }
   $rootScope.imgSrc=img[i++];
   loop();
   $rootScope.c += 1;
  },2000)
 };
 loop();
})

更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
js使用函数绑定技术改变事件处理程序的作用域
Dec 26 Javascript
jQuery随机切换图片的小例子
Apr 18 Javascript
js常用自定义公共函数汇总
Jan 15 Javascript
js实现圆盘记速表
Aug 03 Javascript
JavaScript生成二维码图片小结
Dec 27 Javascript
angular2倒计时组件使用详解
Jan 12 Javascript
js实现textarea限制输入字数
Feb 13 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
Aug 14 jQuery
Vue.js 中的 v-show 指令及用法详解
Nov 19 Javascript
小程序getLocation需要在app.json中声明permission字段
Apr 04 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
May 13 Javascript
vue实现拖拽效果
Dec 23 Javascript
浅谈js使用in和hasOwnProperty获取对象属性的区别
Apr 27 #Javascript
微信小程序 wx:for的使用实例详解
Apr 27 #Javascript
微信小程序 动态传参实例详解
Apr 27 #Javascript
微信小程序 本地数据读取实例
Apr 27 #Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
Apr 27 #Javascript
js获取浏览器的各种属性
Apr 27 #Javascript
jQuery鼠标悬停内容动画切换效果
Apr 27 #jQuery
You might like
PHP使用者状态管理功能的应用
2006/10/09 PHP
php中防止伪造跨站请求的小招式
2011/09/02 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
微信公众平台开发(五) 天气预报功能开发
2016/12/03 PHP
Javascript 对象的解释
2008/11/24 Javascript
jQuery1.3.2 升级到jQuery1.4.4需要修改的地方
2011/01/06 Javascript
Jquery.LazyLoad.js修正版下载,实现图片延迟加载插件
2011/03/12 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
详解Webwork中Action 调用的方法
2016/02/02 Javascript
浅谈js中的三种继承方式及其优缺点
2016/08/10 Javascript
JavaScript 数组的深度复制解析
2016/11/02 Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
2017/02/10 Javascript
JSONP基础知识详解
2017/03/19 Javascript
Servlet返回的数据js解析2种方法
2019/12/12 Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
2020/05/19 Javascript
python使用xlrd模块读写Excel文件的方法
2015/05/06 Python
在Ubuntu系统下安装使用Python的GUI工具wxPython
2016/02/18 Python
tensorflow实现对图片的读取的示例代码
2018/02/12 Python
Python自定义一个异常类的方法
2019/06/27 Python
Django 静态文件配置过程详解
2019/07/23 Python
使用keras根据层名称来初始化网络
2020/05/21 Python
python 基于卡方值分箱算法的实现示例
2020/07/17 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
2020/09/16 Python
Matplotlib配色之Colormap详解
2021/01/05 Python
html5的自定义data-*属性与jquery的data()方法的使用
2014/07/02 HTML / CSS
美国奢侈品购物平台:Orchard Mile
2018/05/02 全球购物
戛纳奢侈品商店:Jacques Loup法国
2019/11/04 全球购物
控制工程专业个人求职信
2013/09/25 职场文书
物业工作计划书
2014/01/10 职场文书
2014年母亲节寄语
2014/05/07 职场文书
2014年民警工作总结
2014/11/25 职场文书
《钓鱼的启示》教学反思
2016/02/18 职场文书
Python开发五子棋小游戏
2022/05/02 Python