You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

滚动修改导航栏背景色JS问题:整栏样式不生效且出现JS报错

问题原因

导航栏样式不生效

你当前是给导航的父容器#para添加test类的黄色背景,但导航元素自身的.header类已经明确设置了背景色,子元素设置的背景会覆盖父元素的背景,因此父元素的黄色背景被遮挡无法显示。

平台JS报错

你的代码使用了jQuery语法,运行平台未提前引入jQuery依赖,因此会抛出$ is not defined类的错误,你本地环境引入了jQuery所以运行正常。

解决方案

1. 修改CSS优先级

调整CSS选择器,父元素携带test类时直接覆盖导航自身的背景样式:

/* 替换原来的.test类样式 */
.test .header {
  background-color: yellow;
}

2. 替换JS为原生写法(解决平台报错,无需依赖jQuery)

直接删除原有jQuery代码,替换为以下纯原生JS代码:

document.addEventListener('DOMContentLoaded', function() {
  const navWrap = document.getElementById('para');
  window.addEventListener('scroll', function() {
    if (window.scrollY > 50) {
      navWrap.classList.add('test');
    } else {
      navWrap.classList.remove('test');
    }
  });
});

修改完成后滚动页面即可看到导航栏背景色正常切换。

内容的提问来源于stack exchange,提问作者Eugene

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 01:45:04