Javascript 检测可滚动DIV是否已到达底部

Javascript 检测可滚动DIV是否已到达底部,javascript,jquery,scroll,Javascript,Jquery,Scroll,我有一个带有溢出:滚动应用,我想在滚动时检测它,并在它达到剩余总高度的5%时触发 -当前我无法在它到达页面底部时触发 <div style="height:50%;overflow:scroll;"> <b style="height:5000px;display:block;"></b> </div> $('div').on('scroll', function(){ if($(window).scrollTop() + $('di

我有一个
带有
溢出:滚动应用,我想在滚动时检测它,并在它达到剩余总高度的5%时触发

-当前我无法在它到达页面底部时触发

<div style="height:50%;overflow:scroll;">
  <b style="height:5000px;display:block;"></b>
</div>


$('div').on('scroll', function(){

  if($(window).scrollTop() + $('div').height() == $('div').height()) {
    console.log("bottom of page");
  }

});

$('div')。在('scroll',function()上{
如果($(窗口).scrollTop()+$('div').height()==$('div').height()){
控制台日志(“页面底部”);
}
});

在您的示例中,窗口是不可滚动的,div是。这导致在检查scrollTop()函数时,div是要查找的元素。此外,这里的总和大于b元素(需要检查)且不相等。因此,按如下方式更改行,代码将按预期执行:

$('div').on('scroll', function(){
    if($("div").scrollTop() + $('div').height() > $('b').height()) {
        console.log("bottom of page");
    }
});

我想你要的是上下高度,不是加号。当添加到div.height时,它永远不会==div.height。。。