0

DOM がロードされた後に、より多くの情報をロードするために Web サーバーに対して起動される一連の AJAX 呼び出しがあります (呼び出しを $.ready 関数でラップします)。ただし、まだブロックされているようです。コードで async オプションを設定しませんでした。ここで何か間違ったことをしていますか?以下は私のコードです:

  $(document).ready(function() {
    var places = #{@results.to_json};

    Places.SERP.initialize(places);
  });

Places.SERP.initialize(places) が定義されている私のserp.jsでは:

  initialize = function(places) {
    initMap(places);
    initDeals(places);
    initFriends(places);
  };

3 つの init* 呼び出しでは、サーバーからより多くの情報を取得するための多数の $.ajax 呼び出しがあります。コードは次のようになります。

$.ajax({
  type: "GET",
  timeout: 1000,
  url: url,
  dataType: "json",
  success: function(retval) {
    if (retval) {
      var data = retval.data;
      if (data) {
        var stats = data.stats,
            friends = data.friends;

        if (stats) {
          $("#places-" + internalId).find(".checkins-wrapper").
            hide().
            append(template({
              checkinCount: stats.checkinsCount
            })).
            fadeIn();
        }
      }
    }
  },
  error: function(jqXHR, status, errorThrown) {
  }
});
4

0 に答える 0