【问题标题】:Cannot Detect When User Scrolls to the Bottom of Page无法检测到用户何时滚动到页面底部
【发布时间】:2018-08-06 20:50:51
【问题描述】:

我正在使用以下代码来检测用户何时滚动到页面底部:

$(window).on("scroll", function() {
    var scrollHeight = $(document).height();
    var scrollPosition = $(window).height() + $(window).scrollTop();
    if ((scrollHeight - scrollPosition) / scrollHeight === 0) {
        // when scroll to bottom of the page
    }
});

但是,当我滚动到页面底部时,if 语句没有告诉我,而是在我一直滚动到顶部时变为真。为什么会这样?非常感谢。我需要检测用户何时滚动到底部的原因是我可以从服务器动态加载内容。我不认为这有什么问题,但是我在后端使用了 Flask,并且故障页面被渲染为带有 jinja-2 的模板。

【问题讨论】:

  • 将此添加到 jsfiddle 会导致:jsfiddle.net/apwkz9mb/1 它对我来说很好。
  • 无法复制!
  • 是否可能与模板引擎存在某种冲突?如果有,我怎么能绕过它?
  • 哇!最后,我发现它不起作用的原因是我忘记了 doctype 声明!

标签: javascript jquery


【解决方案1】:
_onScrollHandler(event){
if(event.target.scrollHeight - event.target.scrollTop === event.target.clientHeight){
console.log('Reacehd Bottom')
} 
}

当 onscroll 事件发生时调用此函数,并且从事件 arg 中可以获取 scrollHeight scrollTop 和 clientheight。 请试试这个

【讨论】:

    猜你喜欢
    • 2011-04-30
    • 1970-01-01
    • 2017-09-06
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    相关资源
    最近更新 更多