CSS scroll snap 延迟多长时间?
How long is the delay for CSS scroll snap?
在一个容器中滚动后,该容器具有某种 CSS 滚动捕捉活动,从用户滚动结束到浏览器开始滚动到捕捉位置的延迟是多长时间?
动机
我写了一个 to question ,其中我通过将滚动事件回调去抖动 250 毫秒来模拟 scrollend
事件。这似乎与 Chrome 浏览器中的实际值足够接近。但是如果能得到一些 first-class 值就好了。某处甚至可能有一个 API 以便我可以通过 JS 获得正确的值。
CSS Scroll Snap Module Level 1:
The CSS Scroll Snap Module intentionally does not specify nor mandate any precise animations or physics used to enforce snap positions; this is left up to the user agent.
我强烈认为大多数支持滚动捕捉的浏览器(例如 Firefox)使用它们已经用于 scroll-behavior: smooth;
的相同功能。
The scrolling box is scrolled in a smooth fashion using a user-agent-defined timing function over a user-agent-defined period of time. User agents should follow platform conventions, if any.
这意味着不仅浏览器、它们的特定版本之间可能存在差异,而且还取决于它们 运行 所在的操作系统。另请注意,浏览器可能会或可能不会根据用户设置更改动画(例如,由于 accessibility concerns)。
我认为没有 API 来获得准确的延迟 and/or 平滑函数。
在一个容器中滚动后,该容器具有某种 CSS 滚动捕捉活动,从用户滚动结束到浏览器开始滚动到捕捉位置的延迟是多长时间?
动机
我写了一个 scrollend
事件。这似乎与 Chrome 浏览器中的实际值足够接近。但是如果能得到一些 first-class 值就好了。某处甚至可能有一个 API 以便我可以通过 JS 获得正确的值。
CSS Scroll Snap Module Level 1:
The CSS Scroll Snap Module intentionally does not specify nor mandate any precise animations or physics used to enforce snap positions; this is left up to the user agent.
我强烈认为大多数支持滚动捕捉的浏览器(例如 Firefox)使用它们已经用于 scroll-behavior: smooth;
的相同功能。
The scrolling box is scrolled in a smooth fashion using a user-agent-defined timing function over a user-agent-defined period of time. User agents should follow platform conventions, if any.
这意味着不仅浏览器、它们的特定版本之间可能存在差异,而且还取决于它们 运行 所在的操作系统。另请注意,浏览器可能会或可能不会根据用户设置更改动画(例如,由于 accessibility concerns)。
我认为没有 API 来获得准确的延迟 and/or 平滑函数。