You need to enable JavaScript to run this app. Chrome及Edge v81+下window.scrollTo的behavior:smooth平滑滚动失效问题咨询
优惠活动
大模型
产品
解决方案
定价
更多

Chrome及Edge v81+下window.scrollTo的behavior:smooth平滑滚动失效问题咨询

核心结论

你的代码实现不存在语法错误,异常来自Chromium 81版本引入的无障碍适配逻辑,不是API无理由失效,也不是被隐藏的浏览器功能开关限制。

具体原因

  • 版本改动溯源:Chrome/Edge共享的Chromium内核在81版本正式上线了无障碍适配规则——当操作系统开启减少动态效果的辅助功能偏好时,原生滚动API会自动将behavior: 'smooth'的请求降级为auto,直接跳转到目标位置,避免给有视觉敏感需求的用户造成不适。
  • 测试复现逻辑:BrowserStack的云端测试实例默认在系统层面开启了「减少动态效果」配置,而80及更早版本的Chromium没有实现这套适配逻辑,才会出现两个相邻版本下功能表现完全割裂的测试结果。本地环境如果没有开启对应系统设置,Chrome/Edge 81+的原生平滑滚动是可以正常触发的。

解决方案

  • 测试环境调整:如果要复现符合预期的原生平滑滚动效果,只需要关闭测试系统的减少动态效果选项即可:Windows系统在「设置-辅助功能-视觉」中关闭动态效果,macOS系统在「系统设置-辅助功能-显示」中关闭减少动态效果。
  • 代码强制覆盖:如果需要无视用户的系统无障碍偏好、强制触发平滑滚动,不要直接依赖原生scrollTo的smooth参数,可以用requestAnimationFrame封装逐帧偏移的自定义滚动动画,完全绕开内核的降级逻辑。

内容的提问来源于stack exchange,提问作者Emanuel Strömgren

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.13 04:15:04