关键代码(依赖jQuery)
$(function(){ var winH = $(window).height(); //页面可视区域高度 var i = 1; //设置当前页数 $(window).scroll(function () { var pageH = $(document.body).height(); var scrollT = $(window).scrollTop(); //滚动条top var aa = (pageH-winH-scrollT)/winH; if(aa<0.02){ $.getJSON("result.php",{page:i},function(json){ if(json){ var str = ""; $.each(json,function(index,array){ var str = "<div class=\"single_item\"><div class=\"element_head\">"; var str += "<div class=\"date\">"+array['date']+"</div>"; var str += "<div class=\"author\">"+array['author']+"</div>"; var str += "</div><div class=\"content\">"+array['content']+"</div></div>"; $("#container").append(str); }); i++; }else{ $(".nodata").show().html("别滚动了,已经到底了。。。"); return false; } }); } }); });
注意:直接使用这段代码会造成不管是上滚下滚都会加载ajax数据,这是可以将0.02改为更小即可(我改成了0.0001)。另外如果你反复上下滚动依然会不断加载数据,这是可以通过定义一个变量标志数据加载完毕,此后就不在发出ajax请求。
网友评论