From 0f59ef64470815f2a7190a18833073ef8ba8af53 Mon Sep 17 00:00:00 2001 From: Tyler Johnson Date: Sat, 18 Mar 2017 18:01:44 -0600 Subject: [PATCH] use pageXOffset instead of scrollX for ie support (#664) --- src/utils/scroll-to-selection.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/utils/scroll-to-selection.js b/src/utils/scroll-to-selection.js index 47b3cc9e9..62b0cab1e 100644 --- a/src/utils/scroll-to-selection.js +++ b/src/utils/scroll-to-selection.js @@ -13,17 +13,17 @@ function scrollToSelection(selection) { const backward = isBackward(selection) const range = selection.getRangeAt(0) const rect = range.getBoundingClientRect() - const { innerWidth, innerHeight, scrollY, scrollX } = window - const top = (backward ? rect.top : rect.bottom) + scrollY - const left = (backward ? rect.left : rect.right) + scrollX + const { innerWidth, innerHeight, pageYOffset, pageXOffset } = window + const top = (backward ? rect.top : rect.bottom) + pageYOffset + const left = (backward ? rect.left : rect.right) + pageXOffset - const x = left < scrollX || innerWidth + scrollX < left + const x = left < pageXOffset || innerWidth + pageXOffset < left ? left - innerWidth / 2 - : scrollX + : pageXOffset - const y = top < scrollY || innerHeight + scrollY < top + const y = top < pageYOffset || innerHeight + pageYOffset < top ? top - innerHeight / 2 - : scrollY + : pageYOffset window.scrollTo(x, y) }