Skip to content Skip to sidebar Skip to footer

How To Check If Scrollbar Is At The Bottom

How can you check if the scroll bar is positioned at the bottom? Using JQuery or JavaScript

Solution 1:

You find the height of the scrolling container, then compare that to the scroll position. If they are the same, then you have reached the bottom.

<div style="overflow: auto; height: 500px">
</div>

$(document).ready(function()
{
   $('div').scroll(function()
   {
      var div = $(this);
      if (div.height() == div.scrollTop() + 1) //scrollTop is 0 based
      {
          alert('Reached the bottom!");
      }
   });
});

Edit: a little testing in a js fiddle and I realized the previous version is incorrect. You can use a DOM property to find out how much scrolling there is a perform a little math with the height of the element like so

var div = $(this);
      if (div[0].scrollHeight - div.scrollTop() == div.height())
      {
          alert('Reached the bottom!');
      }

http://jsfiddle.net/Aet2x/1/

Solution 2:

This is working well for my chat window. It also detects if the content isn't long enough to be scrolled.

function atBottom(ele) {
    var sh = ele.scrollHeight;
    var st = ele.scrollTop;
    var ht = ele.offsetHeight;
    if(ht==0) {
        returntrue;
    }
    if(st == sh - ht)
        {returntrue;} 
    else 
        {returnfalse;}
}

Solution 3:

This worked for me (using jQuery):

$(document).ready(function(){
  $('div').scroll(function(){
    //scrollTop refers to the top of the scroll position, which will be scrollHeight - offsetHeightif(this.scrollTop == (this.scrollHeight - this.offsetHeight)) {
      console.log("Top of the bottom reached!");
    }
  });
});

Taken from here.

Solution 4:

You can check if the element scrollTop is equal to the element innerHeight.

if($('div').scrollTop() == $('div').innerHeight()){
    //Reached the bottom
}

Solution 5:

let div = document.getElementById("div");
if ((div.scrollHeight - div.scrollTop) == div.clientHeight) {
  alert('at Bottom');
}
<divid="div"style="overflow:auto; height=700px"></div>

Post a Comment for "How To Check If Scrollbar Is At The Bottom"