uv-ui
Version:
基于vue3的移动端组件库
26 lines (25 loc) • 598 B
JavaScript
import { ref as u, onMounted as f, unref as o } from "vue";
const i = /scroll|auto|overlay/i, r = typeof window < "u" ? window : void 0;
function c(t) {
return t.tagName !== "HTML" && t.tagName !== "BODY" && t.nodeType === 1;
}
function a(t, n = r) {
let e = t;
for (; e && e !== n && c(e); ) {
const { overflowY: l } = window.getComputedStyle(e);
if (i.test(l))
return e;
e = e.parentNode;
}
return n;
}
function E(t, n = r) {
const e = u();
return f(() => {
o(t) && (e.value = a(o(t), n));
}), e;
}
export {
a as getScrollParent,
E as useScrollParent
};