Brave浏览器滚动Bug:访问streampicker.de页面自动回顶部
滚动自动跳回顶部问题的成因与修复方案
可能成因
浏览器层面(Brave)
- Brave默认的Shields隐私防护(跟踪拦截、脚本限制)与网站滚动相关JS逻辑冲突,误干扰了滚动状态维持。
- Brave的滚动锚定、平滑滚动特性与网站自定义滚动处理逻辑不兼容,触发异常滚动校正。
- 浏览器本地缓存、存储的异常数据导致页面渲染计算错误,引发滚动行为异常。
网站代码层面
- 网站滚动逻辑依赖Chrome专属API或行为,未考虑Brave的隐私限制,当某些依赖资源被屏蔽时,触发跳回顶部的错误逻辑。
- 滚动监听事件存在漏洞,页面布局因Brave屏蔽第三方资源(如广告、统计脚本)发生变化,触发错误的滚动回调。
- 锚点链接或
hashchange事件处理不当,在Brave中因元素加载异常导致hash值错误变化,触发页面跳顶。
修复方案
浏览器用户端操作
- 临时关闭对应网站的Shields:点击地址栏Shields图标,选择「Disable for this site」,刷新页面后测试。
- 重置Brave设置:访问
brave://settings/reset,选择「Restore settings to their original defaults」,清除缓存后重新访问。 - 关闭平滑滚动:进入
brave://settings/appearance,取消勾选「Smooth scrolling」选项后测试。
网站开发者端修复
- 排查滚动相关JS代码,移除依赖第三方资源的滚动触发条件,确保资源未加载时不会执行跳顶逻辑。
- 做浏览器兼容性适配:通过特性检测识别Brave环境,调整
scrollTo、scrollIntoView等滚动API的调用逻辑,避免隐私限制带来的异常。 - 修复锚点与
hashchange事件:确保事件触发条件仅在合法场景下执行,避免因元素缺失或布局异常引发错误滚动。 - 在Brave中进行兼容性测试:使用开发者工具(F12)查看控制台报错,定位具体JS冲突点并修复。
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

