无限滚动与纯文本

问题描述 投票:1回答:1

我想实现一个无限滚动功能,但有一些事情使得这很难做到:

  1. 我想要一个或多或少固定的窗口高度。
  2. 所以通常我会比较一个窗口scrollTop与文档高度和窗口高度之间的差异,附加到底部并从顶部删除,调整scrollTop。简单。
  3. 但。我不能追加。在我的body标签中,我有HTML和纯文本的混合或纯文本。
  4. 所以我想我会用这样的东西
    l=18000;
    //start length
    sw=3000;
    //scrolling window
    j=0;
    const html=$("body").html();
    if (scrollToBottom) {
      $("body").html(html.slice(j,l+sw));
      var ph=$("body").height();
      var result=html.slice(j+l,sw+l);
      $("body").html(result);
      var ch=$("body").height();
      var st=$(window).scrollTop-ph+ch;
      $(window).scrollTop(st);
    } else if (scrollToTop) {
      //the same
    }

它的工作原理但效果很差。有时滚动位置略有错误。此外,在某些情况下,我最终会滚动跳到顶部并触发滚动底部,反之亦然。

我想知道是否有更好的方法或一些现有的插件来完成这项任务。我真的需要无限滚动,因为我在语言处理和文本上的其他一些有点重的东西。

javascript infinite-scroll
1个回答
0
投票

看看,如果你可以使用流行的jQuery插件实现这一点:https://infinite-scroll.com/

© www.soinside.com 2019 - 2024. All rights reserved.