поочередный запуск функций
Очень долго искал, но так и не нашел подходящего решения.
Проблема такая: есть некая функция у сторонней библиотеки с названием XMLLoad. Эта функция забирает и парсит xml файлы с сервера. Есть массив xmlFiles с не известной заранее длинной, в котором лежат имена xml файлов. Мне надо вызывать функцию XMLLoad от каждого элемента xmlFiles так, чтобы каждый следующий вызов происходил только после того как предыдущий выполнился. Не подскажете как? ) |
weeklyTea,
Делать рекурсивный запуск функции - по окончании основного тела типо var ArraIndex=0 function InsertArraIndexHTML (a) { alert(a); a++ InsertArraIndexHTML (a) } InsertArraIndexHTML(ArraIndex) |
Дело в том, что ковырять XMLLoad я не могу, а если делать так:
function insert(i){ XMLLoad(xmlFiles[i]); insert(i +1); } insert(0); То XMLLoad вызовется сразу несколько раз. Т.е. при вызове XMLLoad(xmlFiles[1]), еще не завершит свою работу XMLLoad(xmlFiles[0]), и все "сломается".. пихать рекурсивный вызов в колбэк XMLLoad тоже не выход, по неким соображениям :) Хочется сделать что-то вроде массива очереди, из которого будут браться аргументы, и подставляться в какую-то функцию, каждый следующий вызов которой будет происходить только после завершения предыдущего. |
Часовой пояс GMT +3, время: 11:57. |