UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

40 lines (32 loc) 1.22 kB
import { global } from 'choerodon-ui/shared'; export default function measureScrollbar() { var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'vertical'; if (typeof window === 'undefined') { return 0; } if (direction === 'vertical') { var SCROLL_BAR_WIDTH_VERTICAL = global.SCROLL_BAR_WIDTH_VERTICAL; if (SCROLL_BAR_WIDTH_VERTICAL !== undefined) { return SCROLL_BAR_WIDTH_VERTICAL; } } else { var SCROLL_BAR_WIDTH_HORIZONTAL = global.SCROLL_BAR_WIDTH_HORIZONTAL; if (SCROLL_BAR_WIDTH_HORIZONTAL !== undefined) { return SCROLL_BAR_WIDTH_HORIZONTAL; } } var scrollDiv = document.createElement('div'); scrollDiv.style.cssText = 'position: absolute;width: 50px;height: 50px;top: -9999px; overflow: scroll'; document.body.appendChild(scrollDiv); var size = 0; if (direction === 'vertical') { size = scrollDiv.offsetWidth - scrollDiv.clientWidth; global.SCROLL_BAR_WIDTH_VERTICAL = size; } else { size = scrollDiv.offsetHeight - scrollDiv.clientHeight; global.SCROLL_BAR_WIDTH_HORIZONTAL = size; } document.body.removeChild(scrollDiv); return size; } //# sourceMappingURL=measureScrollbar.js.map