Skip to content

Instantly share code, notes, and snippets.

@jacksonfdam
Created June 1, 2012 16:30
Show Gist options
  • Select an option

  • Save jacksonfdam/2853373 to your computer and use it in GitHub Desktop.

Select an option

Save jacksonfdam/2853373 to your computer and use it in GitHub Desktop.
jQuery check if horizontal scroll is present
//util function to check if an element has a scrollbar present
jQuery.fn.hasScrollBar = function(direction)
{
  if (direction == 'vertical')
  {
    return this.get(0).scrollHeight > this.innerHeight();
  }
  else if (direction == 'horizontal')
  {
    return this.get(0).scrollWidth > this.innerWidth();
  }
  return false;
 
}
//$('#c3 .mbcontainercontent').hasScrollBar('horizontal');
//Similar functions:
//util function to check if an element has a horizontal scrollbar present
jQuery.fn.hasHScrollBar = function()
{
  // log(this.get(0).scrollWidth);
  // log(this.width());
  // log(this.innerWidth());
    return this.get(0).scrollWidth > this.innerWidth();
}
$('#c3 .mbcontainercontent').hasScrollBar();
 
//util function to check if an element has a vertical scrollbar present
jQuery.fn.hasVScrollBar = function()
{
  // log(this.get(0).scrollHeight);
  // log(this.height());
  // log(this.innerHeight());
    return this.get(0).scrollHeight > this.innerHeight();
}
$('#c3 .mbcontainercontent').hasScrollBar();
//Another version…
function hasScroll(el, direction) {
    direction = (direction === 'vertical') ? 'scrollTop' : 'scrollLeft';
    var result = !! el[direction];
 
    if (!result) {
        el[direction] = 1;
        result = !!el[direction];
        el[direction] = 0;
    }
    return result;
}
 
alert('vertical? ' + hasScroll(document.body, 'vertical'));
alert('horizontal? ' + hasScroll(document.body, 'horizontal'));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment