I have created a simple vertical nav bar, which has a some menu items and further each menu item has some sub menu items. When I click on a menu it expands to open its sub menu items and when I click on another menu it also expands.
The problem is that I want one menu item to auto collapse when I click on other menu item, ie i want only one menu item to be expanded at a time.
<nav class="navbar navbar-default">
<div class="container-fluid">
<ul class="nav nav-list bs-sidenav ">
<li class="nav-header">
<a href="#" data-toggle="collapse" data-target="#One"> <font color="grey">Main One</font></a>
<ul class = "collapse" id = "One">
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</li>
<li class="nav-header">
<a href="#" data-toggle="collapse" data-target="#Two"> <font color="grey">Main Two</font></a>
<ul class = "collapse" id = "Two">
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</li>
</ul>
</div>
</nav>
use the collapse plugin .
<div class="panel-group" id="accordion">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
Collapsible Group Item #2
</a>
</h4>
</div>
<div id="collapseTwo" class="panel-collapse collapse">
<div class="panel-body">
</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
Collapsible Group Item #3
</a>
</h4>
</div>
<div id="collapseThree" class="panel-collapse collapse">
<div class="panel-body">
</div>
</div>
</div>
</div>
Try this:
Use accordion
in bootstrap
<div class="panel-group" id="accordion">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
Collapsible 1
</a>
</h4>
</div>
<div id="collapseTwo" class="panel-collapse collapse">
<div class="panel-body">
<ul>
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
Collapsible 2
</a>
</h4>
</div>
<div id="collapseThree" class="panel-collapse collapse">
<div class="panel-body">
<ul>
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</div>
</div>
</div>
</div>
And here is the code;
<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingOne">
<h4 class="panel-title"> <a class="collapsed" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="false" aria-controls="collapseOne"> Main One </a> </h4>
</div>
<div aria-expanded="false" id="collapseOne" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
<div class="panel-body">
<ul>
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingTwo">
<h4 class="panel-title"> <a class="collapsed" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo"> Main Two </a> </h4>
</div>
<div aria-expanded="false" id="collapseTwo" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingTwo">
<div class="panel-body">
<ul>
<li ><a href="http://Input_Form.jsp"> <font color="grey">Sub One</font></a></li>
<li><a href="http://2_Input_Form.jsp"><font color="grey">Sub Two</font></a></li>
<li><a href="http://3_Input_Form.jsp"><font color="grey">Sub Three</font></a></li>
</ul>
</div>
</div>
</div>
</div>
This problem is very much dealt with still simple css can help you get the desired result.
https://jsfiddle.net/arunzo/dh2zhh2k/
nav ul ul {
display:none;
}
a:focus + ul
{
display:block;
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.