无限滚动:显示范围之间的元素

Infinite Scroll: show elements between a range

在我的页面上有 16 个元素。最初只有 4 个显示,其余 5-16 个隐藏在页面上。在页面加载时,我使用 :gt 选择器来隐藏我 'post per page' 数字之外的所有内容,该数字设置为 4.

this.ppp    = 4;
this.count  = this.ppp - 1;
$('li.item:gt(' + this.count + ')').addClass('hide');

当我发起一个Infinite Scroll事件时,通过滚动到页面底部,如何找到5-8范围内的所有元素,然后在下一个事件中找到9-12之间的元素等等基于我的每页帖子价值。

我尝试使用 .nextUntil() 和 :eq 但使用 :eq 方法 returns 一个对象,而 nextUntil() 需要一个像 'li.item'.

这样的字符串
this.count += this.ppp;
var eq = $("ul.items li.item").eq(this.count);
$('ul.items).nextUntil(' + eq  + ')').addClass('show');

可能是解决这个问题的更好更有效的方法,只是寻找一些想法。

谢谢

要显示隐藏 items 最好使用这个:

$('li.item.hide:lt(' + this.ppp + ')').removeClass('hide');

而不是这一切:

this.count += this.ppp;
var eq = $("ul.items li.item").eq(this.count);
$('ul.items).nextUntil(' + eq  + ')').addClass('show');

检查这个最小的例子:https://jsfiddle.net/lmgonzalves/q9oh7eb9/