Skip to content

useWindowScroll

类别
导出体积
666 B
上次更改
3 weeks ago

响应式窗口滚动

示例

查看屏幕右下角的滚动值。
滚动值
x: 0
y: 0

用法

js
import { useWindowScroll } from '@vueuse/core'

const { x, y } = useWindowScroll()
console.log(x.value) // 读取当前的 x 滚动值
y.value = 100 // 将 y 滚动到 100

类型声明

typescript
export interface UseWindowScrollOptions
  extends ConfigurableWindow,
    UseScrollOptions {}
/**
 * 响应式窗口滚动。
 *
 * @see https://vueuse.org/useWindowScroll
 * @param options
 */
export declare function useWindowScroll(options?: UseWindowScrollOptions): {
  x: WritableComputedRef<number, number>
  y: WritableComputedRef<number, number>
  isScrolling: Ref<boolean, boolean>
  arrivedState: {
    left: boolean
    right: boolean
    top: boolean
    bottom: boolean
  }
  directions: {
    left: boolean
    right: boolean
    top: boolean
    bottom: boolean
  }
  measure(): void
}
export type UseWindowScrollReturn = ReturnType<typeof useWindowScroll>

源码

源码演示文档

贡献者

Anthony Fu
一纸忘忧
Nurettin Kaya
Antério Vieira
Robin
Anthony Fu
Chen
Jelf
webfansplz
Maik Kowol
Shinigami
Alex Kozack

更新日志

v12.3.0 on 1/2/2025
a033e - feat: use useScroll under the hood (#4424)
v12.0.0-beta.1 on 11/21/2024
0a9ed - feat!: drop Vue 2 support, optimize bundles and clean up (#4349)
v10.6.0 on 11/9/2023
931b2 - feat: allow rewriting back to scroll (#3500)
v9.13.0 on 2/18/2023
e490a - fix: use scrollX instead of pageXOffset (#2776)