jsdeferredのloop()とwait()
jsdeferred.jsを利用すると、待機処理を伴うループを簡潔に記述できる。
Deferred.loop(10, function(i){ return $.getJSON("./boke/random").next(function(data){ //... dom操作(1) return Deferred.wait(1); }) .next(function(){ // ...DOM操作(2) return Deferred.wait(3); }); });
上記コードにより、json取得 →DOM操作(1)→1秒待機→DOM操作(2)→3秒待機というループを10回繰り返す。
@nakajimanさん作のopensocial-jqueryにもjsdeferredは組み込まれていますが、残念ながらloop()は非対応とのことです。
http://twitter.com/nakajiman/status/19296191932
Index - opensocial-jquery - API Index - Project Hosting on Google Code