0

jQuery と ajax を使用してリモート Web ページを取得しています。この Web ページをブラウザーに読み込むと、正常に読み込まれますが、約 100 ミリ秒後にカウンターを表す別の要素が表示されます。このカウンターは特定の場所に挿入され、特定のクラスを持ちます。これは、この場所の HTML です。

<span class="unreadcount">1</span>

Chrome 用のプラグインを作成しようとしていますが、この値が必要です。問題は、ページがロードされた後はこの値を使用できないことですが、必要な値を取得するためにページの HTML を処理する前に、ページからサーバーへの要求 (unreadcount 番号) が完了するのを待つ必要があります。

jQueryでこれを行う方法はありますか? 次のコードを使用して HTML ページを取得しています。

$.ajax({
           async: false,
           cache: false,
           type: 'GET',
           dataType: 'html',
           url: 'https://somesite.com/index.php',
           success: function(data1) {
               var descNode = document.createElement("div");
               descNode.innerHTML = data1;
               var unreadcount = descNode.getElementsByClassName("unreadcount");
            /*process unreadcount etc*/
         },
         error: function () {
            // something went wrong with the request
            error_occurred();
            return;
         }
      });

残念なことに、毎回 unreadcount.length は 0 であり、カウンターがページと共に読み込まれていないことに気付きましたが、その直後です。

ページを処理する前にカウンターが読み込まれるのを待つにはどうすればよいですか?

4

1 に答える 1