UNPKG

mss_element_ui

Version:
22 lines (17 loc) 556 B
import Vue from 'vue'; export default function scrollIntoView(container, selected) { if (Vue.prototype.$isServer) return; if (!selected) { container.scrollTop = 0; return; } const top = selected.offsetTop; const bottom = selected.offsetTop + selected.offsetHeight; const viewRectTop = container.scrollTop; const viewRectBottom = viewRectTop + container.clientHeight; if (top < viewRectTop) { container.scrollTop = top; } else if (bottom > viewRectBottom) { container.scrollTop = bottom - container.clientHeight; } }