UNPKG

tdesign-vue-next

Version:
1 lines 1.27 kB
{"version":3,"file":"scrollToElm.mjs","sources":["../../../../components/guide/utils/scrollToElm.ts"],"sourcesContent":["import { getWindowSize, elementInViewport, scrollTo } from '@tdesign/shared-utils';\n\nexport function scrollToElm(elm: HTMLElement) {\n const rect = elm.getBoundingClientRect();\n\n if (!elementInViewport(elm)) {\n const winHeight = getWindowSize().height;\n // const top = rect.bottom - (rect.bottom - rect.top);\n scrollTo(rect.top - (winHeight / 2 - rect.height / 2), {});\n\n // todo 先暂时保留这里的逻辑\n // if (top < 0 || element.clientHeight > winHeight) {\n // window.scrollBy(0, rect.top - (winHeight / 2 - rect.height / 2));\n // } else {\n // window.scrollBy(0, rect.top - (winHeight / 2 - rect.height / 2));\n // }\n }\n}\n"],"names":["scrollToElm","elm","rect","getBoundingClientRect","elementInViewport","winHeight","getWindowSize","height","scrollTo","top"],"mappings":";;;;;;;;;;;AAEO,SAASA,YAAYC,GAAkB,EAAA;AACtC,EAAA,IAAAC,IAAA,GAAOD,IAAIE,qBAAsB,EAAA,CAAA;AAEnC,EAAA,IAAA,CAACC,iBAAkB,CAAAH,GAAG,CAAG,EAAA;AACrB,IAAA,IAAAI,SAAA,GAAYC,eAAgB,CAAAC,MAAA,CAAA;AAEzBC,IAAAA,QAAA,CAAAN,IAAA,CAAKO,OAAOJ,SAAY,GAAA,CAAA,GAAIH,KAAKK,MAAS,GAAA,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AAQ3D,GAAA;AACF;;;;"}