您是否曾访问某个网页,开始阅读其中的内容,但由于广告或图片加载,网页突然弹出,导致您在网页上的位置丢失?
您不妨查看 Chrome 51 中的滚动锚点标志。
滚动锚点会跟踪您在页面上的位置,并防止任何导致重排的内容干扰您在页面上的位置。
如需亲自试用此功能,请执行以下操作:
- 在 Chrome 开发者版/Canary 版中,前往 chrome://flags/#enable-scroll-anchoring
- 从下拉菜单中选择“已启用”
- 点击屏幕底部的“立即重新启动”
这样,您就可以启用滚动锚点了。
我们已经使用此功能一段时间了,我们认为这极大地改善了所有网络用户的体验,但我们希望确保它在所有平台上都能正常运行。如果您发现滚动锚点未能处理页面中的重新流布局,或者发现滚动锚点不应干预的示例,请告诉我们!
请填写此表单:g.co / reportbadreflow,向我们发送反馈/出现意外行为的示例
常见问题解答
这项变更对 JavaScript 滚动有何影响?
简而言之,不会。
此更改会改变由重新流导致的滚动效果。例如,向某个元素添加类名称会导致其高度增加,从而导致重新流布局,而滚动锚点会防止页面跳动。
调用 window.scrollTo(0, 1)
(是的,就是老式黑客攻击)不会导致重新流动,并且会正常运行。触摸事件也是如此。
如果您发现滚动锚点影响了您的网页,请通过以下表单发送反馈:g.co/reportbadreflow