Jquery Cookbook/5. 빠르게, 간단하게, 더욱 재미있게
5.6 사용자 정의 반복기 작성하기
altvirus
2011. 11. 10. 14:39
each 문을 바로 한꺼번에 말고, 중간에 조금씩 시간을 두고 실행한다.
<div class="xx">1</div>
<div class="xx">2</div>
<div class="xx">3</div>
<script>
$('div').hide();
$.slowEach = function(array, interval, callback){
if(!array.length) return;
var i=0;
next();
function next(){
if(callback.call(array[i], i, array[i]) !==false && ++i<array.length) setTimeout(next, interval);
}
return array;
}
$.fn.slowEach = function(interval, callback){
return $.slowEach(this, interval, callback);
}
$('.xx').slowEach(500, function(a, b){
$(this).show();
});