跳过主要内容

ScrollTrigger.observe

ScrollTrigger.observe( config:Object ) : Observer

一种超级灵活、统一的方式来感知所有(触摸/鼠标/指针)设备上的有意义事件,而无需处理所有实现细节。触发简单的回调如 onUp、onDown、onLeft、onRight、onChange、onHover、onDrag 等。功能上等同于Observer.create()

参数

  • config: 对象

    一个包含 target、type、onUp、onDown 等属性的配置对象。

返回值:Observer

一个具有诸如...等属性的 Observer 对象deltaX, deltaY等等。请参阅Observer 文档了解详情。

细节

一种超级灵活、统一的方式来感知所有(触摸/鼠标/指针)设备上的有意义事件,而无需纠结于各种实现细节。也许您希望响应“类似滚动”的用户行为,这可能是一个鼠标滚轮旋转、手指在触摸设备上滑动、拖动滚动条,或指针按下并拖动……当然您需要方向数据和速度信息。没问题!

ScrollTrigger.observe()只是一种访问Observer.create()的便捷方式。由于ScrollTrigger.normalizeScroll()功能在底层使用了 Observer(因此它已经包含在 ScrollTrigger 中),公开它的功能是有意义的,这样如果您已经在项目中使用了 ScrollTrigger,就可以避免将 Observer 作为单独的文件加载。不客气。🙂

看看基于用户向上/向下滑动或使用鼠标滚轮时触发 next()/previous() 函数有多么简单:

ScrollTrigger.observe({
target: window, // can be any element (selector text is fine)
type: "wheel,touch", // comma-delimited list of what to listen for ("wheel,touch,scroll,pointer")
onUp: () => previous(),
onDown: () => next(),
});

演示

注意下面的演示中实际上没有滚动,但您可以使用鼠标滚轮(或者在触摸设备上滑动)来启动移动,使其“感觉”像在滚动:

加载中...

配置和使用详情

请参见Observer 文档以获取所有详细信息。

无噪 Logo
无噪文档
中文文档 · 复刻官网
查看所有 ↗