2016-03-25 42 views
0

Oldukça garip bir hatayla karşılaştım. Belirli bir AJAX isteği üzerine Safari, için tam olarak 60 saniye askıda kalıyor, ardından istek tarafından döndürülen verileri gösterir. Bir kişi onun Safari'sini tamamen çökerttiğini iddia ediyor (hem masaüstü hem de mobil). Bu başka bir tarayıcıda olmaz. Bu istekle ilgili özel bir şey yok gibi görünüyor. - $(this).attr('data-lb-daysago') için var 4 olası değerler 7, 30, 90, 180. Sorun sadece burada 30'da ile oluşur kod şudur: Burada karanlıktaAJAX istekleri kilitleniyor/kilitleniyor Safari

$('[data-lb-daysago]').click(function() 
{ 
    if (parseInt($(this).attr('data-lb-daysago')) != daysago) 
    { 
     $('#load_more_row_lb').html(loader()); 
     $('[data-lb-daysago]').removeClass('active_da'); 
     $(this).addClass('active_da'); 
     $('[data-lb-last-offset]').hide(); 
     daysago = parseInt($(this).attr('data-lb-daysago')); 
     var request = {action: 'leaderboard_ajax', daysago: daysago, offset: 0}; 
     $.ajax({type: "post", dataType: "json", url: ep_ajax_object.ajax_url, data: request}).done(function (e) 
     { 
      $('[data-lb-last-offset]').attr('data-lb-last-offset', e.offset); 
      $('[data-lb-last-offset]').html(e.html); 
      $('[data-lb-last-offset]').show(); 
      if (typeof e.nomore == 'undefined') 
      { 
       $('#load_more_row_lb').html('<span class="load_more_button" id="load_more_lb">Load More <span class="fi-expand-down" title="expand down" aria-hidden="true"></span></span>'); 
       bind_things(); 
      } 
      else 
      { 
       $('#load_more_row_lb').html('<span class="load_more_button" id="load_more_lb">Load More <span class="fi-expand-down" title="expand down" aria-hidden="true"></span></span>'); 
       bind_things(); 
       $('#load_more_row_lb').hide(); 
      } 
     }); 
    } 
}); 

cevap

0

Shot ama birkaç önerimiz yapacaktır: 1. Önceden engellenen başka istekler var mı? Bazen kullanıcılar, sonraki isteklerin karşıdan yüklenmesini engelleyen Reklam engelleyicileri, gizlilik eklentileri vb. Yükler ve bu özellikle Ajax çağrıları daha sonra gerçekleştiğinden dolayı geçerlidir. 2. Safari'de, birden fazla eşzamanlı Ajax isteğiniz olduğunda yalnızca engelleyen bir hata (ehm, performans geliştirme) vardır, bu nedenle uzun sorgulama veya engellenmiş bir şey varsa, isteğiniz engellenir. (IOS6'da bununla ilgili büyük sorun yaşadım, o zamandan beri düzeltilip düzeltilmediğinden emin değilim)

İlgili konular