fix(Tabs): incorrect scrollspy position while inside a scroller

This commit is contained in:
chenjiahan
2020-02-29 15:57:20 +08:00
parent d9d85a7c72
commit 0993b394b1
3 changed files with 24 additions and 14 deletions
+5 -3
View File
@@ -65,12 +65,14 @@ export function setRootScrollTop(value: number) {
setScrollTop(document.body, value);
}
// get distance from element top to page top
export function getElementTop(el: ScrollElement) {
// get distance from element top to page top or scroller top
export function getElementTop(el: ScrollElement, scroller?: HTMLElement) {
if (isWindow(el)) {
return 0;
}
return el.getBoundingClientRect().top + getRootScrollTop();
const scrollTop = scroller ? getScrollTop(scroller) : getRootScrollTop();
return el.getBoundingClientRect().top + scrollTop;
}
export function getVisibleHeight(el: ScrollElement) {