本文介绍如何为bootstrap导航栏的动态高亮条添加响应式控制,确保滑动高亮动画仅在桌面端(屏幕宽度 > 750px)生效,并在窗口缩放时实时启停,避免移动端误触发。
要实现导航菜单高亮条的“仅在大屏启用滚动定位功能”,关键在于动态监听视口宽度变化,而非仅在页面加载时做一次判断。原代码中使用 $(document).width() 在 $(document).ready() 中静态检测,导致窗口缩放后状态无法同步——这是典型的响应式交互遗漏。
✅ 正确做法:用 window.innerWidth + resize 实时判断
window.innerWidth 返回当前视口的像素宽度(含滚动条),比 jQuery 的 $(document).width() 更准确、无依赖,且原生性能更优。我们应将核心逻辑封装为可开关的函数,并在初始化和每次 resize 时重新校验条件: