window.pageYOffset vs document.documentElement.scrollTop

19

В Javascript window.pageYOffset и document.documentElement.scrollTop оба измеряют расстояние от верхнего окна окна до его самого верхнего видимого содержимого в пикселе. Являются ли они такими же или я что-то не хватает?

Trust window.pageYOffset не поддерживается для IE & lt; 9, но если предположить, что IE & gt; 8, то

  • Когда использовать каждый из них
  • разница между ними
задан jahajee.com 29.03.2014 в 07:10
источник
  • Также есть window.scrollY. –  Dan Dascalescu 21.07.2015 в 09:59

2 ответа

9

Оба window.pageYOffset и document.documentElement.scrollTop возвращают одинаковый результат во всех случаях.

Да, window.pageYOffset не поддерживается ниже IE 9.

Метод scrollTop () также может использоваться для получения вертикальной позиции прокрутки конкретного элемента.

    
ответ дан Krish 29.03.2014 в 08:02
  • По-видимому, window.pageYOffset медленнее. PR в претензии: github.com/w3c/respec/pull/1685. Для этого нужно создать jsperf. –  Sudhanshu Vishnoi 29.05.2018 в 11:55
6

Разницу между этими двумя можно четко наблюдать в кроссплатформенной разработке мобильных приложений с использованием JQuery mobile. Там могут быть определены несколько страниц на одном html-страницах.

document.documentElement.scrollTop будет полезна, когда вы находитесь на определенной странице и хотите, чтобы значение относилось к этой странице, где window.pageYOffset применяется только к всей странице html.

В противном случае, как сказал криш, результаты этих двух в основном одинаковы.

    
ответ дан Hashan Seneviratne 06.09.2015 в 15:14