UNPKG

element-ui

Version:

A Component Library for Vue.js.

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; } }