tdesign-mobile-vue
Version:
tdesign-mobile-vue
1 lines • 1.45 kB
Source Map (JSON)
{"version":3,"file":"getScrollParent.mjs","sources":["../../src/_util/getScrollParent.ts"],"sourcesContent":["type ScrollElement = HTMLElement | Window;\n\nconst overflowScrollReg = /scroll|auto|overlay/i;\n\nexport default function getScrollParent(\n el: Element | null | undefined,\n root: ScrollElement | null | undefined = window,\n): Window | Element | null | undefined {\n let node = el;\n\n while (node && node !== root && node.nodeType === 1) {\n const { overflowY } = window.getComputedStyle(node);\n if (overflowScrollReg.test(overflowY)) {\n return node;\n }\n node = node.parentNode as Element;\n }\n\n return root;\n}\n"],"names":["overflowScrollReg","getScrollParent","el","root","arguments","length","undefined","window","node","nodeType","_window$getComputedSt","getComputedStyle","overflowY","test","parentNode"],"mappings":";;;;;;AAEA,IAAMA,iBAAoB,GAAA,sBAAA,CAAA;AAEF,SAAAC,eAAAA,CACtBC,EACA,EACqC;AAAA,EAAA,IADrCC,IAAA,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAyCG,MACJ,CAAA;EACrC,IAAIC,IAAO,GAAAN,EAAA,CAAA;EAEX,OAAOM,IAAQ,IAAAA,IAAA,KAASL,IAAQ,IAAAK,IAAA,CAAKC,aAAa,CAAG,EAAA;AACnD,IAAA,IAAAC,qBAAA,GAAsBH,MAAA,CAAOI,iBAAiBH,IAAI,CAAA;MAA1CI,SAAA,GAAAF,qBAAA,CAAAE,SAAA,CAAA;AACJ,IAAA,IAAAZ,iBAAA,CAAkBa,IAAK,CAAAD,SAAS,CAAG,EAAA;AAC9B,MAAA,OAAAJ,IAAA,CAAA;AACT,KAAA;IACAA,IAAA,GAAOA,IAAK,CAAAM,UAAA,CAAA;AACd,GAAA;AAEO,EAAA,OAAAX,IAAA,CAAA;AACT;;;;"}