UNPKG

@prettyy/ui

Version:

vue2 UI

30 lines (22 loc) 794 B
import Vue from 'vue' let scrollBarWidth export default function() { if (Vue.prototype.$isServer) return 0 if (scrollBarWidth !== undefined) return scrollBarWidth const outer = document.createElement('div') outer.className = 'el-scrollbar__wrap' outer.style.visibility = 'hidden' outer.style.width = '100px' outer.style.position = 'absolute' outer.style.top = '-9999px' document.body.appendChild(outer) const widthNoScroll = outer.offsetWidth outer.style.overflow = 'scroll' const inner = document.createElement('div') inner.style.width = '100%' outer.appendChild(inner) const widthWithScroll = inner.offsetWidth outer.parentNode.removeChild(outer) scrollBarWidth = widthNoScroll - widthWithScroll return scrollBarWidth }