jquery.scrollbarwidth.js 923 B

123456789101112131415161718192021222324252627
  1. ;(function($) {
  2. if ($.scrollbarWidth) {
  3. return;
  4. }
  5. var scrollbarWidth = 0;
  6. $.scrollbarWidth = function() {
  7. if ( !scrollbarWidth ) {
  8. if ( $.browser.msie ) {
  9. var $textarea1 = $('<textarea cols="10" rows="2"></textarea>')
  10. .css({ position: 'absolute', top: -1000, left: -1000 }).appendTo('body'),
  11. $textarea2 = $('<textarea cols="10" rows="2" style="overflow: hidden;"></textarea>')
  12. .css({ position: 'absolute', top: -1000, left: -1000 }).appendTo('body');
  13. scrollbarWidth = $textarea1.width() - $textarea2.width();
  14. $textarea1.add($textarea2).remove();
  15. } else {
  16. var $div = $('<div />')
  17. .css({ width: 100, height: 100, overflow: 'auto', position: 'absolute', top: -1000, left: -1000 })
  18. .prependTo('body').append('<div />').find('div')
  19. .css({ width: '100%', height: 200 });
  20. scrollbarWidth = 100 - $div.width();
  21. $div.parent().remove();
  22. }
  23. }
  24. return scrollbarWidth;
  25. };
  26. })(jQuery);