【问题标题】:Close DropDown Menu after clicking a link (Bootstrap)单击链接后关闭下拉菜单(引导程序)
【发布时间】:2017-05-26 15:19:12
【问题描述】:

我希望 DropMenu(在移动查询中)在单击菜单中的链接后关闭,并且图标保持在他的位置而不是移动到 li 列表下方。

这是我的 HTML 代码:

<nav class="navbar navbar-inverse navbar-fixed-top">
<a id="icono" href="http://www.facebook.com/clenslimpieza" target="_blank">
  <i class="fa facebook fa-facebook-square fa-3x" aria-hidden="true"></i>
</a>
<ul class="nav navbar-nav" id="dropdownClick">
  <li><a href="#inicio">Inicio</a></li>
  <li><a href="#quees">¿Qué es?</a></li>
  <li><a href="#porque">¿Por qué?</a></li>
  <li><a href="#servicios">Servicios</a></li>
  <li><a href="#testimonios">Testimonios</a></li>
  <li><a href="#equipo">Equipo</a></li>
  <li><a href="#contactenos">Contactenos</a></li>
  <li class="dropdownIcon"><a href="javascript:void(0);" 
  onclick="dropdownMenu()"><i class="fa fa-bars fa-2x" aria-hidden="true">
  </i></a></li>
</ul>

这是脚本代码:

<script>
function dropdownMenu() {
  var x = document.getElementById("dropdownClick");
  if (x.className === "nav navbar-nav") {
    x.className += "responsive";
  } else {
    x.className = "nav navbar-nav";
  }
};
</script>

这是我的 CSS 代码:

@media only screen and (max-width: 767px ) {
#equipo {
 height: auto;
}

.navbar-nav li:not(:nth-child(8)) {
 display: none;
} 

ul.nav li.dropdownIcon {
  float: right;
  display: block;
}

ul.nav.responsive li.dropdownIcon {
  position: absolute;
  top: 0;
  right: 0;
}

ul.nav.responsive {
  position: relative;
}

ul.nav.responsive li {
  display: inline;
  float: none;
}

ul.nav.responsive li a {
  display: block;
  text-align: left;
}
}

【问题讨论】:

    标签: javascript jquery html css twitter-bootstrap-3


    【解决方案1】:

    这只是一种选择!

    function dropdownMenu() {
    var x = document.getElementById("dropdownClick");
    if (x.className === "nav navbar-nav") {
      x.className += "responsive";
    } else {
      x.className = "nav navbar-nav";
    }
    
    
     }
     $(".dropdown-menu a").click(function() {
      $(this).closest(".dropdown-menu").prev().dropdown("toggle");
    });
     $('#dropdownClick li a').click(function(){
     $(this).closest('nav.navbar').find('.navbar-navresponsive').addClass('nav navbar-nav').toggleClass('navbar-navresponsive');
    })
    @media only screen and (max-width: 767px ) {
    #equipo {
     height: auto;
    }
    
    .navbar-nav li:not(:nth-child(8)) {
     display: none;
    } 
    
    ul.nav li.dropdownIcon {
      float: right;
      display: block;
    }
    
    ul.nav.responsive li.dropdownIcon {
      position: absolute;
      top: 0;
      right: 0;
    }
    
    ul.nav.responsive {
      position: relative;
    }
    
    ul.nav.responsive li {
      display: inline;
      float: none;
    }
    
    ul.nav.responsive li a {
      display: block;
      text-align: left;
    }
    }
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
    
    <nav class="navbar navbar-inverse navbar-fixed-top">
    <a id="icono" href="http://www.facebook.com/clenslimpieza" target="_blank">
      <i class="fa facebook fa-facebook-square fa-3x" aria-hidden="true"></i>
    </a>
    <ul class="pull-right">
    <li class="dropdownIcon"><a href="javascript:void(0);" 
      onclick="dropdownMenu()"><i class="fa fa-bars fa-2x" aria-hidden="true">
      </i></a></li></ul>
    <ul class="nav navbar-nav" id="dropdownClick">
      <li><a href="#inicio">Inicio</a></li>
      <li><a href="#quees">¿Qué es?</a></li>
      <li><a href="#porque">¿Por qué?</a></li>
      <li><a href="#servicios">Servicios</a></li>
      <li><a href="#testimonios">Testimonios</a></li>
      <li><a href="#equipo">Equipo</a></li>
      <li><a href="#contactenos">Contactenos</a></li>
      
    </ul>
    </nav>

    【讨论】:

    • 谢谢,这固定了位置,但是当我单击列表项时,您知道如何关闭下拉列表吗?
    • 我做了一些改动,看看吧。
    猜你喜欢
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-07
    • 1970-01-01
    • 2018-02-14
    • 2020-01-19
    • 1970-01-01
    相关资源
    最近更新 更多