angularjs中迴圈定時器的三種方法
本文主要設計定時器的三種迴圈,模板自配
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中迴圈定時器的三種方法
本文主要設計定時器的三種迴圈,模板自配 1、$interlval實現,比較簡單和原生js的setInterval比較相似 var app = angular.module('myApp',[]);
vue中錨點的三種方法
第一種: router.js中新增 mode: 'history', srcollBehavior(to,from,savedPosition){ if(to.hash){ return { selector:to.hash } } } 元件: &
java向多執行緒中傳遞引數的三種方法詳細介紹
在傳統的同步開發模式下,當我們呼叫一個函式時,通過這個函式的引數將資料傳入,並通過這個函式的返回值來返回最終的計算結果。但在多執行緒的非同步開發模式下,資料的傳遞和返回和同步開發模式有很大的區別。由於執行緒的執行和結束是不可預料的,因此,在傳遞和返回資料時就無法象函式一樣通過
TP5控制器中使用檢視的三種方法
1、直接例項化檢視類 1、檢視類: thinkphp/library/think/View.php; 2、名稱空間: use think\View; 3、例項化: 動態 new View(); 靜態 View::instance(); 4、常用方法: fetch()渲染模板, displ
C# 中使用using的三種方法
1.using指令using+名稱空間,這種方法基本學習過C#的都用過,好處在於,寫程式碼的時候不需要指定詳細的名稱空間using System.Windows.Media; using System.Windows.Media.Imaging;2.using語句是用來簡化資源釋放的,在一定的範圍內有效,除了
android呼叫音樂播放器,三種方法
小弟想請問一下,如何在自己寫的程式中呼叫系統的音樂播放器呢。 我在google上搜索了,主要是有兩種方法,但是都不是我想要的。第一種是,使用mp3音樂檔案的uri,和intent,進行呼叫,但是這種是針對某一首歌曲的播放使用的。 /** * 播放指定名稱的歌曲
Matlab中陣列元素引用——三種方法
1.Matlab中陣列元素引用有三種方法 1 2 3 1.下標法(subscripts) 2.索引法(index) 3.布林法(Boolean) 注意:在使用這三種方法之前,大家頭腦一定要
vc中刪除資料夾以及資料夾中的內容的三種方法
BOOL CDeleteFolderDlg::DeleteFolder(CString lpszPath)//刪除資料夾以及資料夾內的檔案 { CHAR szFromPath[_MAX_PATH];//原始檔路徑memcpy(szFromPath, lpszPath, lp
從httprequest中獲取並解析content中的xml內容三種方法
一、request.getReader()和DocumentHelper.parseText() import java.io.BufferedReader; import javax.servlet
Linux中Vim編輯器三種模式和命令
原文地址:http://www.tuicool.com/articles/NZz2ii Vim的3種模式:一般模式、編輯模式和命令模式。 當我們是用“ vim filename ”編輯一個檔案的時候,預設進入該檔案的一般模式。 開啟檔案的命令有很多,如下圖所示。
Android中傳遞物件的三種方法
編輯推薦:稀土掘金,這是一個針對技術開發者的一個應用,你可以在掘金上獲取最新最優質的技術乾貨,不僅僅是Android知識、前端、後端以至於產品和設計都有涉獵,想成為全棧工程師的朋友不要錯過!Android中,Activity和Fragment之間傳遞物件,可以通過將物件序列化
網頁中插入FLASH的三種方法
一、Object+embed這應該是Macromedia推薦的寫法,因為在Macromedia Dreamweaver 8中,通過視覺化介面插入FLASH,將得到如下的程式碼:<object classid="clsid:D27CDB6E-AE6D-11cf-96B8
【PHP興趣部落-08】PHP中時區設定的三種方法(timezone)
一 、三種方法 php中時區預設是格林尼治時間,和中國時差八個小時。現在根據需要將時間設定為中國時間,下面整理了三種方法。 方法1: 最好的方法在php.ini里加上找到 date.timezone 項,設定date.timezone = “Asia
PHP中時區設定的三種方法(timezone)
方法1:(最好的方法)在php.ini里加上找到date.timezone項,設定date.timezone = "Asia/Shanghai",重啟環境就ok了。方法2:在需要用到這些時間函式的時候,在頁面新增date_default_timezone_set("PRC")
unity中訊息傳遞的三種方法
unity中提供了物件間訊息傳遞的三種方法: BroadcastMessage()方法SendMessage()方法SendMessageUpwards()方法 BroadcastMessage方法: void BroadcastMessage (string meth
C#中操作Word(8)—— 向Word中插入圖表的三種方法(一)
一、 前言 本文主要介紹向word中插入圖表的方法。方法共有三種,每一種都有自己的適用範圍和利弊。介紹之前,我們準備實驗用的文件,做一個如下圖所示的word模板,我們要做的的是在這個名叫chart的書籤中插入一個圖表,下面然後我將逐一進行介紹這三種方法:
Shell中字串分割的三種方法
問題:對於’1,2,3,4,5’這樣的字串輸出採用,分隔開的1 2 3 4 5 特徵:在字串中沒有空格 解決方法1: #!/bin/bash var=’1,2,3,4,5’ var=${var//,/ } #這裡是將var中的,替換為空格 for element in
Android中圖片圓形設定三種方法介紹
Android開發中經常會用到圓形圖片,比如在使用者頭像設定,現在提供三種主要實現方式: 方案一:使用第三方影象框架 Fresco 1、新增依賴 dependencies { compile 'com.facebook.fresco:f
JAVA:定時器的三種方法(詳細註解)
第一種: 建立一個thread,然後讓它在while迴圈裡一直執行著,通過sleep方法來達到定時任務的效果,程式碼如下: public class Task1 { public static void main(String[] args) { /
shell指令碼程式設計中for while until三種迴圈的使用方法
最後要介紹的是 shell script 設計中常見的"迴圈"(loop)。所謂的 loop 就是 script 中的一段在一定條件下反覆執行的程式碼。 bash shell 中常用的 loop 有如下三種: * for * while * until for l