【问题标题】:JavaScript doesn't display nav menuJavaScript 不显示导航菜单
【发布时间】:2017-02-04 02:39:06
【问题描述】:

移动菜单看起来不错,并且可以响应大小变化,但是当您单击移动菜单时,它不会弹出或根本没有反应。

  <nav>
       <ul class="topnav" id="myTopnav">
      <li><a href="index.html" class="selected">Home</a></li>
      <li><a href="about.html">About</a></li>
      <li><a href="skills.html">Skills</a></li>
      <li><a href="mywork.html"> My Work </a></li>
      <li><a href="contact.html">Contact</a></li>
      <li class="icon">
      <a href="scripts.js:void(0);" onclick="myFunction()">&#9776;</a>
    </li>
    </ul>
  </nav>

这是 JavaScript

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

【问题讨论】:

  • 请添加CSS,什么的;到目前为止,还无法判断它是否应该实际显示。
  • 也许问题是 myTopnav 的类要么是topnav 要么是topnavresponsive ...你需要一个空格吗? topnav responsive ...另外,考虑使用element.classList.contains element.classList.add element.classList.remove 作为替代更清洁的代码:p

标签: javascript html menubar


【解决方案1】:

您可以在“响应式”之前插入一个空格。像这样:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-07
    • 2018-08-22
    • 1970-01-01
    • 1970-01-01
    • 2019-07-14
    • 2022-01-17
    相关资源
    最近更新 更多