Показать сообщение отдельно
  #2 (permalink)  
Старый 23.12.2012, 01:33
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Специально для этих ситуаций в jquery есть deffered http://habrahabr.ru/post/113073/

либо всё по минимуму на javascript (в примере timeout вместо ajax для удобства но суть таже)
сначало выполнятся все три таймера затем только сработает три кэлбека в порядке их добавления.

function ajx (){
		var count=0;
		var funcs=[];
		return function(time,fun){
			count++;
			funcs.push(fun);

			setTimeout(function(){
				count--;		
				if (count==0) {  
					for (var i=0;i<funcs.length;i++  ) funcs[i]();
					funcs=[];
				}
			},time);
		}
}

       //пример использования
	test=ajx( );
	test(3000,function(){ alert("1я сработала") });
	test(100,function(){ alert("2я сработала") });
	test(1000,function(){ alert("3я сработала") });
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 23.12.2012 в 02:39.
Ответить с цитированием