我正在构建一个无限滚动,当滚动条到达页面底部时,将从数据库中提取结果。除了一件小事外,这一切都很好。如果我快速向下滚动,它会两次获取结果,就像该函数执行两次一样。Jquery AJAX请求加载两次
这里是我的jQuery代码:
$(window).scroll(function() {
if($(window).scrollTop() == $(document).height() - $(window).height()) {
var ID = $('.stbody:last').attr('id').match(/stbody(\d+)/)[1];
$('#loader').show();
$.ajax({
url: "ajax_loadmore.php?lCom=" + ID,
success: function (result) {
if(result) {
$('#moreComments').append(result);
$('#loader').hide();
} else {
$('#loader').hide();
}
}
});
}
});
Javascript is _somewhat_ single threaded;你是否尝试过简单地标记一个标志来指示已经调用了内容的ajax请求,从而简单地退出? – Tejs 2012-07-10 14:05:44