react-custom-scrollbars-2
Version:
React scrollbars component
38 lines (31 loc) • 1.11 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = getScrollbarWidth;
var _domCss = require('dom-css');
var _domCss2 = _interopRequireDefault(_domCss);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var scrollbarWidth = false;
function getScrollbarWidth() {
var cacheEnabled = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
if (cacheEnabled && scrollbarWidth !== false) return scrollbarWidth;
/* istanbul ignore else */
if (typeof document !== 'undefined') {
var div = document.createElement('div');
(0, _domCss2["default"])(div, {
width: 100,
height: 100,
position: 'absolute',
top: -9999,
overflow: 'scroll',
MsOverflowStyle: 'scrollbar'
});
document.body.appendChild(div);
scrollbarWidth = div.offsetWidth - div.clientWidth;
document.body.removeChild(div);
} else {
scrollbarWidth = 0;
}
return scrollbarWidth || 0;
}
;