简体   繁体   English

单击菜单项时如何在手机上关闭(隐藏)菜单

[英]How to close(hide) menu on mobile when menu item is clicked

I have a problem with my website when it is seen on mobile phone. 在手机上看到我的网站时出现问题。 I have one button that opens "table" with menu items. 我有一个按钮可以打开带有菜单项的“表”。 When I click on some menu item, correct page opens, but "table" with menu items is not closed. 当我单击某个菜单项时,将打开正确的页面,但没有关闭带有菜单项的“表”。 It closes only when I click on menu button again. 仅当我再次单击菜单按钮时,它才会关闭。

I tried all the solutions for similar situations that are offered here, but non of them worked for me. 我尝试了此处提供的针对类似情况的所有解决方案,但没有一个对我有用。 Does anyone have a clue how can I fix this? 有人知道如何解决此问题吗? Thanks in advance! 提前致谢!

Here is my code: 这是我的代码:

in head tag: 在头部标签中:

<script src="js/jquery-1.11.1.min.js"></script>  
<script src="js/templatemo_custom.js"></script>
<script src="js/jquery.lightbox.js"></script>
<script src="js/bootstrap-collapse.js"></script> 

in body tag: 在正文标签中:

<nav class="navbar navbar-default" role="navigation">
          <div class="container-fluid"> 
            <!-- Brand and toggle get grouped for better mobile display -->           
            <div class="navbar-header">
              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span>
              </button>
            </div>           
            <div id="top-menu">
              <div class="collapse navbar-collapse main_menu" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav">
                  <li><a class="show-1 templatemo_home" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-home"></span>Početna</a></li>
                  <li><a class="show-1 templatemo_page3" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-users"></span>Čime se bavimo</a></li>
                  <li><a class="show-1 templatemo_page5" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-medkit"></span>Terapija</a></li>
                  <li><a class="show-1 templatemo_page2" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-picture-o"></span>Galerija</a></li>
                  <li><a class="show-1 templatemo_page4" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-envelope"></span>Kontakt i lokacija</a></li>
                </ul>
              </div>
            </div>        
            <!-- /.navbar-collapse --> 
          </div>
          <!-- /.container-fluid --> 
    </nav>

You have to use javascript for that. 您必须使用javascript。 Try below code. 尝试下面的代码。

<script>
  function closeFunction()
  { 
     document.getElementById('bs-example-navbar-collapse-1').style.display='none';
  }
</script>
<nav class="navbar navbar-default" role="navigation">
          <div class="container-fluid"> 
            <!-- Brand and toggle get grouped for better mobile display -->           
            <div class="navbar-header">
              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span>
              </button>
            </div>           
            <div id="top-menu">
              <div class="collapse navbar-collapse main_menu" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav">
                  <li><a class="show-1 templatemo_home" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-home"></span>Početna</a></li>
                  <li><a class="show-1 templatemo_page3" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-users"></span>Čime se bavimo</a></li>
                  <li><a class="show-1 templatemo_page5"onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-medkit"></span>Terapija</a></li>
                  <li><a class="show-1 templatemo_page2" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-picture-o"></span>Galerija</a></li>
                  <li><a class="show-1 templatemo_page4" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-envelope"></span>Kontakt i lokacija</a></li>
                </ul>
              </div>
            </div>        
            <!-- /.navbar-collapse --> 
          </div>
          <!-- /.container-fluid --> 
    </nav>

I've found a solution to my problem :) 我找到了解决我的问题的方法:)

In addition to Omkar solution, there should be one more function - for button it self: 除了Omkar解决方案之外,还应该有另外一项功能-自行设置按钮:

 <script>
  function closeFunction()
  { 
      document.getElementById('bs-example-navbar-collapse-1').style.display = "none";

  }
  function openFunction(){
    document.getElementById('bs-example-navbar-collapse-1').style.display = "initial";
  }
</script> 
     <nav class="navbar navbar-default" role="navigation">
          <div class="container-fluid"> 
            <!-- Brand and toggle get grouped for better mobile display -->           
            <div class="navbar-header">
              <button type="button" class="navbar-toggle collapsed" onclick="openFunction()" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span> 
                <span class="icon-bar"></span>
              </button>
            </div>           
            <div id="top-menu">
              <div class="collapse navbar-collapse main_menu" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav">
                  <li><a class="show-1 templatemo_home" onclick="closeFunction()"  data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-home"></span>Početna</a></li>
                  <li><a class="show-1 templatemo_page3" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-users"></span>Čime se bavimo</a></li>
                  <li><a class="show-1 templatemo_page5" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-medkit"></span>Terapija</a></li>
                  <li><a class="show-1 templatemo_page2" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-picture-o"></span>Galerija</a></li>
                  <li><a class="show-1 templatemo_page4" onclick="closeFunction()" data-toggle="collapse" data-target=".in" href="#"><span class="fa fa-envelope"></span>Kontakt i lokacija</a></li>
                </ul>
              </div>
            </div>        
            <!-- /.navbar-collapse --> 
          </div>
          <!-- /.container-fluid --> 
    </nav>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM