当我仅在移动视图中单击汉堡包时,粘性导航栏消失

Sticky Navbar Disapears When I Click On Hamburger in Mobile View Only

不知道为什么,但粘性导航栏工作正常,除非我在移动视图中向下滚动。当我点击 "Menu Click Here" 时,整个导航栏消失了。

我认为 javascript 函数正在删除粘性 class 但我不确定如何解决这个问题。

http://lonestarwebandgraphics.com/

/* Toggle between adding and removing the "responsive" class to bottomnav when the user clicks on the icon */
function myFunction() {
var x = document.getElementById("mybottomnav");
if (x.className === "bottomnav") {
x.className += " responsive";
} else {
x.className = "bottomnav";
}
}

问题出在您的 myFunction 函数中。

<a href="javascript:void(0);" class="icon" onclick="myFunction()"><p>Menu Click Here </p>  ☰</a>

在这里,您调用 myFunction() 来切换汉堡菜单的状态。但是,myFunction 无法管理切换。

因此,要使其正常工作,请更改您当前的版本

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

到下面这个:

function myFunction() {
  var x = document.getElementById("mybottomnav");
  if(x.classList.contains("responsive")) {
    x.classList.remove("responsive");
  } else {
    x.classList.add("responsive");
  }
}