【问题标题】:Sticky Navbar Disapears When I Click On Hamburger in Mobile View Only仅在移动视图中单击汉堡时,粘性导航栏消失
【发布时间】:2020-03-29 04:46:09
【问题描述】:

不知道为什么,但粘性导航栏可以正常工作,除非我在移动视图中向下滚动。当我单击“菜单单击此处”时,整个导航栏就会消失。

我认为 javascript 函数正在删除粘性类,但我不知道如何解决这个问题。

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";
}
}

【问题讨论】:

    标签: javascript html css navbar sticky


    【解决方案1】:

    问题出在您的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");
      }
    }
    

    【讨论】:

    • 哦,这绝对是有道理的。谢谢,我下班后试试这个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-20
    • 1970-01-01
    • 2017-09-19
    • 2018-10-23
    • 1970-01-01
    相关资源
    最近更新 更多