diff --git a/src/stickyScrollBar.tsx b/src/stickyScrollBar.tsx index cec2666c4..85a640745 100644 --- a/src/stickyScrollBar.tsx +++ b/src/stickyScrollBar.tsx @@ -105,31 +105,20 @@ const StickyScrollBar: React.ForwardRefRenderFunction= currentClientOffset - offsetScroll - ) { - setScrollState(state => ({ - ...state, - isHiddenScrollBar: true, - })); - } else { - setScrollState(state => ({ - ...state, - isHiddenScrollBar: false, - })); - } + setScrollState(state => ({ + ...state, + isHiddenScrollBar: + tableBottomOffset - getScrollBarSize() <= currentClientOffset || + tableOffsetTop >= currentClientOffset - offsetScroll, + })); }); }; const setScrollLeft = (left: number) => { - setScrollState(state => { - return { - ...state, - scrollLeft: (left / bodyScrollWidth) * bodyWidth || 0, - }; - }); + setScrollState(state => ({ + ...state, + scrollLeft: bodyScrollWidth ? (left / bodyScrollWidth) * bodyWidth : 0, + })); }; React.useImperativeHandle(ref, () => ({