UNPKG

@zippytech/react-scroll-container

Version:
53 lines (44 loc) 1.23 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var document = global.document; var scrollbarWidth = false; var hideNativeScrollbarWidth = false; exports.default = function (hideNativeScrollbarIfPossible) { if (hideNativeScrollbarIfPossible) { if (hideNativeScrollbarWidth !== false) { return hideNativeScrollbarWidth; } } else { if (scrollbarWidth !== false) { return scrollbarWidth; } } var result = void 0; if (document) { var div = document.createElement('div'); var divStyle = div.style; if (hideNativeScrollbarIfPossible) { div.className = 'zippy--hide-native-scroll-if-possible'; } divStyle.width = '100px'; divStyle.height = '100px'; divStyle.position = 'absolute'; divStyle.boxSizing = 'content-box'; divStyle.top = '-99999px'; divStyle.overflow = 'scroll'; divStyle.MsOverflowStyle = 'scrollbar'; document.body.appendChild(div); result = div.offsetWidth - div.clientWidth; document.body.removeChild(div); } else { result = 0; } if (hideNativeScrollbarIfPossible) { hideNativeScrollbarWidth = result; } else { scrollbarWidth = result; } return result; };