javascript - 代码在 Codepen 中有效,但在我的网站上无效

标签 javascript jquery html css

我真的是 Javascript 的新手,我一直在努力解决这个问题。我的代码在我的 [Codepen] 上按照我希望的方式运行

$(window).on("scroll", function() {
  if ($(window).scrollTop() > 10) {
    $(".topnav").addClass("active");
    $(".mustang").addClass("active");
    $(".sally").addClass("active");
  } else {
    $(".topnav").removeClass("active");
    $(".mustang").removeClass("active");
    $(".sally").removeClass("active");
  }
});

function myFunction() {
  var x = document.getElementById("myTopnav");
  if (x.className === "topnav") {
    x.className += " responsive";
  } else {
    x.className = "topnav";
  }
}

但是它不会在 [我的网站] 上运行。最大的问题是顶部的导航栏在我的网站上不会改变颜色,但在我的 Codepen 上它会完美地改变。

我几乎可以肯定这是我的 Javascript 的问题,如果有人能帮助我,我将不胜感激。谢谢。

最佳答案

如果您检查您网站上的控制台(按 F12,或右键单击 > 检查),您将看到一个错误:

$ is not defined

这是因为,虽然您在页面中包含了 jQuery,但它需要 - 在您自己的代码之前。

<head>
  <link href="https://fonts.googleapis.com/css?family=Libre+Baskerville:400,400i" rel="stylesheet">
  <link href="https://fonts.googleapis.com/css?family=Roboto+Slab:300,400" rel="stylesheet">  
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <link rel="stylesheet" href="post1.css">

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <script src="post1.js"></script>
</head>

另请注意,您可以通过使用 toggleClass() 并为 addClass() 提供一个函数来简化您的 JS 逻辑:

$(window).on("scroll", function() {
  $('.topnav, .mustang, .sally').toggleClass('active', $(window).scrollTop() > 10)
});

function myFunction() {
  $('#myTopnav').addClass(function() {
    return $(this).hasClass("topnav") ? 'responsive' : 'topnav');
  });
}

关于javascript - 代码在 Codepen 中有效,但在我的网站上无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47591643/

相关文章:

javascript - 使用 Google 方向 API 问题绘制具有 8 个以上航路点的路线图

javascript - 多表单场景下如何保存之前输入的内容?

html - Font Awesome Icons,如何添加悬停效果?

javascript - 如何检测网页元素是否不可见?

javascript - 如何在 MAC 上使用 Protractor 与 Appium 和 IOS-Simulator 进行自动化测试

javascript - 当尝试获取 HTML 表中表选择器是变量的行数时,使用什么 jQuery 语法

php - 将 div 保存为照片?

jquery - 访问 iframe 父级中的 div

javascript - 在谷歌闭包库中创建自定义事件调度程序的问题

javascript - 滚动条问题 x2