dev.to | 📄 原文链接 | 2026-09-18 收录

别再给 resize 加防抖了,浏览器本来就在盯着它

来源:dev.to — 2026-09-17

📋 概述

一个在 900px 断点下闪烁的侧边栏:问题不在 CSS,而在用 JS 监听 resize 并比较 window.innerWidth 的代码。resize 在拖动瞬间每秒能触发 60 次以上,滚动条出现还会让宽度差 15px 在边界上误判;加防抖只是延后判断,并没有修掉「用像素值重建媒体查询」这个根因。正确做法是 matchMedia——它监听状态变化,只在跨过断点时通知一次。

🔑 核心要点

💡 金句

这个 bug 不在于防抖的延时,而在于你在 JS 里笨拙地重建了一个媒体查询,而浏览器本来就有原生的方式问同一个问题。
← 返回 dev.to 首页