我写了一个简单的脚本,其中我使用ajax $ .get来获取无限滚动的数据。问题是,我可能滚动比加载速度快,导致它加载三次?实现无限滚动而不显示重复数据
function last_msg_funtion()
{
var ID=$(".feed_container").last().attr("id");
$.ajax({
url: "ajax/pagination.php",
type:"get",
data: "p="+ID
}).done(function(data){
if (data != "")
{
var $boxes = $(data);
//$(".feed_container:last").after(data);
$("#feed_main").append($boxes).masonry('appended',$boxes);
}
});
$(window).scroll(function(){
var mostOfTheWayDown = ($(document).height() - $(window).height()) - 300;
if ($(window).scrollTop() >= mostOfTheWayDown)
{
//alert('test');
last_msg_funtion();
}
}
如果我一直向下滚动,则需要一段时间才能加载。我在last_msg_function()
中返回的数据是AJAX $ .get(),我正在获取图像。但是,它加载了相同数据的三倍。任何想法来防止这种情况?
感谢
setInterval()不适用于我。我发现它会重复三次....不是两次或四次,但它会一直重复三次? – hellomello