Window: scrollY 屬性

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

* 此特性的某些部分可能存在不同級別的支援。

Window 介面的只讀屬性 scrollY 返回文件當前垂直滾動的畫素數。在現代瀏覽器中,此值是亞畫素精度的,意味著它不一定是整數。你可以透過 scrollX 屬性獲取文件水平滾動的畫素數。

一個雙精度浮點值,表示文件當前從原點垂直滾動的畫素數,正值表示內容向下滾動(以顯示更多底部的內容)。更技術地說,scrollY 返回當前 視口 頂部邊緣的 Y 座標。如果文件根本沒有向上或向下滾動,則 scrollY 為 0。如果沒有視口,則返回值為 0。如果文件在亞畫素精度裝置上渲染,則返回值也是亞畫素精度的,可能包含小數部分。

注意: 如果你需要一個整數值,可以使用 Math.round() 來對其進行四捨五入。

Safari 會透過更新 scrollY 來響應過滾動(除非停用了預設的“回彈”效果,例如透過將 overscroll-behavior 設定為 none),而 Chrome 和 Firefox 則不會。例如,在 Safari 中,僅透過向上滾動到文件頂部,scrollY 就可能為負數。

此屬性是隻讀的。要將視窗滾動到特定位置,請使用 Window.scroll()

示例

js
// make sure and go down to the second page
if (window.scrollY) {
  window.scroll(0, 0); // reset the scroll position to the top left of the document.
}

window.scrollByPages(1);

注意

使用此屬性來檢查在使用相對滾動函式(如 scrollBy()scrollByLines()scrollByPages())時,文件尚未滾動。

pageYOffset 屬性是 scrollY 屬性的別名。這意味著如果你沒有重新分配這兩個屬性中的任何一個,window.pageYOffset === window.scrollY 始終為 true。

規範

規範
CSSOM 檢視模組
# dom-window-scrolly

瀏覽器相容性

另見