У меня есть следующий код, который работает нормально и добавляет результаты к существующим результатам. Проблема в том, что иногда кажется, что функция запускается дважды и возвращает вдвое больше данных, которые я ожидаю.
Это происходит не каждый раз, но, возможно, 1 в 5 раз. Я думаю, что природа свитка поражает дно. Я попытался добавить 'var ajaxRunning', как показано ниже, но это все еще происходит. Кто-нибудь знает решение?
window.onscroll = function(ev) {
var lastID = jQuery('.load-more').attr('lastID');
var ajaxRunning = false;
if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight ) {
ajaxRunning = true;
jQuery.ajax({
type:'POST',
url:'getData.php',
data:'id='+pager + '&location='+loc,
beforeSend:function(){
jQuery('.load-more').show();
},
success:function(html){
jQuery('.load-more').remove();
jQuery('#results').append(html);
pager++;
},
complete: function() {
ajaxRunning = false;
}
});
}};