Javascript 按需滚动加载数据
我正在通过滚动实现按需加载数据 我已经在document.ready中注册了这个函数,可以进行div了 仅当到达最后一个滚动条时,才应填充数据。因此,为了确定滚动是否达到最后一次,我使用下面的功能Javascript 按需滚动加载数据,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,我正在通过滚动实现按需加载数据 我已经在document.ready中注册了这个函数,可以进行div了 仅当到达最后一个滚动条时,才应填充数据。因此,为了确定滚动是否达到最后一次,我使用下面的功能 $("#tree").scroll(function () { if (isScrolledToBottom(this)) { } }); 但是函数没有返回正确的值。我的意思是当滚动到最后一次时,它应该返回一个
$("#tree").scroll(function () {
if (isScrolledToBottom(this)) {
}
});
但是函数没有返回正确的值。我的意思是当滚动到最后一次时,它应该返回一个真值
function isScrolledToBottom(object) {
return ($(object).attr('scrollHeight') - $(object).scrollTop() - 1) <= $(object).height();
};
函数IsCrolledTobottom(对象){
return($(object.attr('scrollHeight')-$(object.scrollTop()-1)请尝试以下操作:
return ($(object).attr('offsetHeight') + $(object).attr('scrollTop') >= $(object).attr('scrollHeight'));
如果您想进行无限滚动,请在此处查看我的答案:
此演示在某个Y滚动位置触发。如果您希望在用户到达某个项目时完成此操作,您可能需要查看Waypoints插件
无限滚动演示:
我确信,已经有了一个解决方案。Google forinfinite ajax scrolling
好吧,我相信这个概念本身对那些不理解它的人来说有点混乱。你不明白什么?我在寻找控制无限代码示例的js,以了解内容是如何实际加载的以及在哪里加载的,刚刚注意到了它在页面的底部,这样会有帮助。
$('.theItems:last').waypoint(function(event, direction) {
//Ajax fetch here
});
var scrollHeight = $(object).prop("scrollHeight"); // total scrollable height of the element
var scrollTop = $(object).scrollTop(); // how far you have come from the top while scrolling vertically
var height = $(object).height(); // the constant height of the portion in display at all times
if (scrollHeight === (scrollTop + height)) {
//console.log("fetching page");
fetchNextPage();
}