当页面加载时没有足够的内容用于滚动条时触发无限滚动



我正在使用伟大的无限滚动插件-http://www.infinite-scroll.com/infinite-scroll-jquery-plugin/

但在更大的屏幕分辨率上,没有足够的帖子来显示滚动条,因此永远不会触发无限滚动。想知道这些是否是在没有大量初始帖子的情况下绕过这一问题的方法。

猜测某种if语句来检查浏览器高度等。但是如果返回true,我该如何触发无限滚动。

任何想法

感谢

Ben

快速检查的一种方法是:

// Force 'retrieve' for next page if window is taller than document
if($(window).height() >= $(document).height()){
$wall.infinitescroll('retrieve');
};

如果需要,您可能需要将其转换为用于多次"检索"的函数,直到窗口不高于文档为止。

对于新版本的infinitescroll,设置选项

prefill: true

这个解决方案是在github上创建和讨论的。

我知道这个问题已经过时了,但这将对你们中的许多人有所帮助。

@Luigi的回答很好,但若只加载一次内容来显示滚动条还不够呢?

这应该做得最好

var no_scrollbar_workaround = setInterval(function checkVariable() {
           if($(window).height() >= $(document).height()) {
                    jsonloader(); //here you put your function for more content
            } else {
                    clearInterval(no_scrollbar_workaround);
            }
}, 1000);

这将运行多次,直到需要实际显示滚动条为止。

当您使用Ctrl+-尽可能缩小页面时,您可以测试此功能,并看到它的所有荣耀。

在显示滚动条之前,您将看到对新内容的调用。

最新更新