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

时间:2015-06-30 21:18:36

标签: javascript jquery scroll

我有一个<div>已应用overflow: scroll;,我希望在滚动时检测到它,并触发它达到其剩余总高度的5%

JSBin - 目前我无法触及页面底部。

<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");
  }

});

1 个答案:

答案 0 :(得分:2)

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

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