как использовать jquery для загрузки из массива страниц - по порядку - PullRequest
0 голосов
/ 04 апреля 2011

Я получаю кучу ссылок со страницы, а затем извлекаю из этих страниц определенный элемент контента.Код, который я только что создал, работает и делает именно это.

Проблема в том, что запросы асинхронные, элементы загружаются не по порядку.Я попытался добавить задержку, но это не сработало.

Нужно ли использовать .ajax вместо .load?Если да, то как будет выглядеть этот зацикленный метод добавления с помощью команды .ajax?Вы все еще можете использовать селектор с URL?Или есть эффективный способ добиться этого с помощью .load?

Заранее спасибо.

    function runthis() {

var links = $("#article-slide-belt a").map(function() {
                return this.href;
            }).get();

$.each( links, function(i, l){

    $("<div>").load(l + " .gl_left", function() {
          $(".gl_left").append($(this).find(".gl_left").html());
    });

 });

}

Ответы [ 3 ]

2 голосов
/ 04 апреля 2011

Вы можете указать следующую ссылку для загрузки по завершении первого запроса - приведенный ниже код не очень элегантный, но он будет делать то, что вы хотите

1 голос
/ 04 апреля 2011
0 голосов
/ 04 апреля 2011

Я попробовал синхронный маршрут .ajax. И это происходит в правильном порядке, но ждать невыносимо. Должна быть читаемой страницей во время загрузки данных.

$.each( links, function(i, l){

$.ajax({        
     url: l,                         
     async: false,         
     success: function(data){
    var $response=$(data);

    $(".gl_left").append($response.find(".gl_left").html());

    }     
     });

 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...