最稳方案是用window.scrollto({top:0,behavior:"smooth"}),按钮必须为并带aria-label,显隐用opacity+visibility控制,监听scroll事件并以window.scrolly>300为阈值。

直接用 window.scrollTo({ top: 0, behavior: "smooth" }) 就行,别绕到锚点、scrollTop 赋值或定时器模拟——现代浏览器全支持,最稳。
按钮必须是 <button></button> 元素,不是链接也不是 div
用 <a href="#top"></a> 会往 URL 加 hash,干扰 SPA 路由和埋点;用 <div> 没语义、不可聚焦、屏幕阅读器不识别。必须写成:
<pre class="brush:php;toolbar:false;"><button id="backToTop" aria-label="回到顶部">↑</button></pre>
<ul>
<li>
<code>aria-label 是硬性要求,不能省,中文环境别写英文











