var pages = ['page1.html', 'page2.html', 'page3.html']; //불러올 페이지 모음
var defer = new $.Deferred(); //새로운 빈 지연 객체를 초기화
var next = defer; //다음 지연 객체를 담을 변수
for(var i=0; i<pages.length; i++){
next = next.then(function(){ //다음 지연 객체에 불러올 Ajax 호출 실시
return $.ajax(pages[i]).done(function(text){
// 여기에 페이지를 성공적으로 호출했을 때 콜백을 구현합니다.
console.log('페이지 내용 : ' + text);
}); //Ajax 객체는 메소드가 체인이기 때문에 반드시 변수에 담고 별도로 호출할 필요가 없습니다.
});
}
next.then(function(){
// 여기에 모든 페이지를 성공적으로 호출했을 때 콜백을 구현합니다.
console.log('모든 페이지 호출 성공');
});
출처 : http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=78467&page=4