Добрый день. Делаю запросы на страницу, добавляю в массив. Нужно чтобы функция when работала с массивом, или что-то подобное. Написал подобный код в Greasemonkey (тостер привел как пример):
this.$ = this.jQuery = jQuery.noConflict(true);
$(function () {
$(document).ready(function()
{
console.log('start');
var link1 = "https://toster.ru/";
var link2 = "https://toster.ru/questions";
var queryArray = [];
var query1 = $.get(link1).done(function($page){console.log("page1 loaded");});
var query2 = $.get(link2).done(function($page){console.log("page2 loaded");});
queryArray.push(query1);
queryArray.push(query2);
$.when(queryArray).done(function(){console.log("all pages loaded");});
console.log('end');
});
});
Вот что он мне выводит ("all pages loaded" должен быть в самом конце):
start
all pages loaded
end
page1 loaded
page2 loaded
Если задавать запросы отдельно, то всё нормально работает, но это не вариант:
$.when(query1, query2).done(function(){console.log("all pages loaded");});
Как в $.when запихать массив запросов, или есть ли альтернативы?