@ohu-mobile/core
Version:
28 lines (27 loc) • 978 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getScrollEventTarget = getScrollEventTarget;
// github.com/youzan/vant/-/blob/src/utils/dom/scroll.ts
var overflowScrollReg = /scroll|auto/i;
function getScrollEventTarget(element) {
var rootParent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
var node = element;
while (node && node.tagName !== 'HTML' && node.nodeType === 1 && node !== rootParent) {
var _window$getComputedSt = window.getComputedStyle(node),
overflowY = _window$getComputedSt.overflowY;
if (overflowScrollReg.test(overflowY)) {
if (node.tagName !== 'BODY') {
return node;
}
var _window$getComputedSt2 = window.getComputedStyle(node.parentNode),
htmlOverflowY = _window$getComputedSt2.overflowY;
if (overflowScrollReg.test(htmlOverflowY)) {
return node;
}
}
node = node.parentNode;
}
return rootParent;
}