From 40da2be1dad2b4b0dce47964019df4030d3e5e88 Mon Sep 17 00:00:00 2001 From: Rene Date: Tue, 30 Mar 2021 22:55:16 +0200 Subject: [PATCH] improve style method --- .../overlayscrollbars/src/lifecycles/overflowLifecycle.ts | 5 +++-- packages/overlayscrollbars/src/support/dom/style.ts | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/overlayscrollbars/src/lifecycles/overflowLifecycle.ts b/packages/overlayscrollbars/src/lifecycles/overflowLifecycle.ts index 075a1fb..3efbc79 100644 --- a/packages/overlayscrollbars/src/lifecycles/overflowLifecycle.ts +++ b/packages/overlayscrollbars/src/lifecycles/overflowLifecycle.ts @@ -102,9 +102,10 @@ export const createOverflowLifecycle = (lifecycleHub: LifecycleHub): Lifecycle = const { x: overlaidX, y: overlaidY } = _nativeScrollbarIsOverlaid; const determineOverflow = !viewportStyleObj; const arrangeHideOffset = _content && !_nativeScrollbarStyling && !showNativeOverlaidScrollbars ? overlaidScrollbarsHideOffset : 0; + const styleObj = determineOverflow ? style(_viewport, ['overflowX', 'overflowY']) : viewportStyleObj; const scroll = { - x: (determineOverflow ? style(_viewport, 'overflow-x') : viewportStyleObj!.overflowX) === 'scroll', - y: (determineOverflow ? style(_viewport, 'overflow-y') : viewportStyleObj!.overflowY) === 'scroll', + x: styleObj!.overflowX === 'scroll', + y: styleObj!.overflowY === 'scroll', }; const scrollbarsHideOffset = { x: scroll.x && !_nativeScrollbarStyling ? (overlaidX ? arrangeHideOffset : _nativeScrollbarSize.x) : 0, diff --git a/packages/overlayscrollbars/src/support/dom/style.ts b/packages/overlayscrollbars/src/support/dom/style.ts index 0cd1e33..bb89306 100644 --- a/packages/overlayscrollbars/src/support/dom/style.ts +++ b/packages/overlayscrollbars/src/support/dom/style.ts @@ -34,7 +34,7 @@ const parseToZeroOrNumber = (value: string, toFloat?: boolean): number => { const adaptCSSVal = (prop: string, val: string | number): string | number => (!cssNumber[prop.toLowerCase()] && isNumber(val) ? `${val}px` : val); const getCSSVal = (elm: HTMLElement, computedStyle: CSSStyleDeclaration, prop: string): string => /* istanbul ignore next */ - computedStyle != null ? computedStyle.getPropertyValue(prop) : elm.style[prop]; + computedStyle != null ? computedStyle[prop] || computedStyle.getPropertyValue(prop) : elm.style[prop]; const setCSSVal = (elm: HTMLElement | null | undefined, prop: string, val: string | number): void => { try { if (elm && elm.style[prop] !== undefined) {