Window: scrollX 属性

只读的 scrollX 属性是 Window 接口的属性,它返回文档当前水平滚动的像素数。在现代浏览器中,此值是亚像素精确的,这意味着它不一定是整数。你可以从 scrollY 属性获得文档垂直滚动的像素数。

一个双精度浮点值,表示文档当前水平从原点滚动的像素数,正值表示内容向右滚动(以显示右侧的更多内容)。更准确地说,scrollX 返回当前 视窗 左边缘的 X 坐标。如果文档没有水平滚动,则 scrollX 为 0。如果不存在视窗,则返回的值为 0。如果文档在亚像素精确的设备上呈现,则返回的值也是亚像素精确的,可能包含小数部分。

注意:如果你需要整数值,可以使用 Math.round() 来将其四舍五入。

如果文档可以从初始包含块向左滚动,则 scrollX 可能为负值。例如,如果文档是右到左的,并且内容向左增长。

Safari 通过更新 scrollX 超过最大滚动位置来响应过度滚动(除非禁用了默认的“反弹”效果,例如通过将 overscroll-behavior 设置为 none),而 Chrome 和 Firefox 不会。

此属性是只读的。要将窗口滚动到特定位置,请使用 Window.scroll().

示例

此示例检查文档当前的水平滚动位置。如果它大于 400 像素,则窗口将滚动回开头。

js
if (window.scrollX > 400) {
  window.scroll(0, 0);
}

备注

pageXOffset 属性是 scrollX 属性的别名。这意味着如果你没有重新分配任何属性,window.pageXOffset === window.scrollX 始终为真。

规范

规范
CSSOM 视图模块
# dom-window-scrollx

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅