2017-05-26 40 views
0

我希望DropMenu(在移動查詢中)在點擊菜單中的鏈接後關閉,並且該圖標停留在他的位置並且不移動到列表的下方。單擊鏈接後關閉DropDown菜單(引導)

這是我的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; 
} 
} 

回答

0

這只是一個選擇!

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>

+0

謝謝,固定的位置,但你知道如何關閉下拉當我點擊列表項? – AlonsoGP

+0

我做了一些修改,看看。 – LXhelili

+0

非常感謝。 :) – AlonsoGP

相關問題