javascriptwidthscrollbar

How do I get the max value of scrollLeft?


Okay I'm using jQuery and currently getting max value of scrollbar doing this:

var $body = $('body');
$body.scrollLeft(99999); // will give me the max value since I've overshot
var max_value = $body.scrollLeft(); // returns 300
$('body').scrollLeft(0);

When I try this: $body[0].scrollWidth I just get the actual width of the contents - 1580

I'm thinking there has to be a better way I'm forgetting.

EDIT To clarify, I also tried $(window).width() and $(document).width() which gave me 1280 and 1580, respectively.


Solution

  • You can calculate the maximum value of element.scrollLeft with:

    var maxScrollLeft = element.scrollWidth - element.clientWidth;
    

    Note that there could be some browser specific quirks that I'm not aware of.