Reputation: 3247
I am attempting to create an accordion with Bootstrap. My intent is to click on a title and have it open and close the panel without having other panels be affected.
In this situation, when I have panels 1 and 2/3 open and click to close 2 or 3, panel 1 ends up closing when it should not be affected at all.
@import url('http://getbootstrap.com/dist/css/bootstrap.css');
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<!-- Experience -->
<section class="container experience">
<div class="row">
<h2>Heading</h2>
<div class="col-md-3">
<span>lorem </span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingOne">
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
<h3 class="panel-title">Title1</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseOne" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li>
</ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of accordion -->
</div>
<!-- end of middle column -->
<div class="col-md-3">
<span>blah</span>
</div>
<!-- end of 3rd column -->
</div>
<div class="row">
<div class="col-md-3">
<span>lorem</span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingTwo">
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="true" aria-controls="collapseTwo">
<h3 class="panel-title">Title2</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseTwo" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li>
</ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of middle column -->
<div class="col-md-3">
<span>lorem</span>
</div>
<!-- end of 3rd column -->
</div>
<div class="row">
<div class="col-md-3">
<span>lorem</span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingThree">
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseThree" aria-expanded="true" aria-controls="collapseThree">
<h3 class="panel-title">Title3</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseThree" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingThree">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li> </ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of middle column -->
<div class="col-md-3">
<span>lorem</span>
</div>
<!-- end of 3rd column -->
</div>
</section>
<!-- end of experience -->
Also, how do I have the accordions closed by default when page loads?
Upvotes: 0
Views: 1409
Reputation: 21653
Remove the data-parent
attribute to disconnect them from one another and remove in
from class="panel-collapse collapse"
if you want them to start off closed.
<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.5/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" />
<!-- Experience -->
<section class="container experience">
<div class="row">
<h2>Heading</h2>
<div class="col-md-3"> <span>lorem </span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingOne">
<a role="button" data-toggle="collapse" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
<h3 class="panel-title">Title1</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseOne" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li>
</ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of accordion -->
</div>
<!-- end of middle column -->
<div class="col-md-3"> <span>blah</span>
</div>
<!-- end of 3rd column -->
</div>
<div class="row">
<div class="col-md-3"> <span>lorem</span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingTwo">
<a role="button" data-toggle="collapse" href="#collapseTwo" aria-expanded="true" aria-controls="collapseTwo">
<h3 class="panel-title">Title2</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseTwo" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li>
</ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of middle column -->
<div class="col-md-3"> <span>lorem</span>
</div>
<!-- end of 3rd column -->
</div>
<div class="row">
<div class="col-md-3"> <span>lorem</span>
</div>
<!-- end of 1st column -->
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading" role="tab" id="headingThree">
<a role="button" data-toggle="collapse" href="#collapseThree" aria-expanded="true" aria-controls="collapseThree">
<h3 class="panel-title">Title3</h3>
</a>
</div>
<!-- end of panel title -->
<div id="collapseThree" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingThree">
<div class="panel-body">
<ul>
<li>Lorem ipsum</li>
</ul>
</div>
<!-- end of panel body -->
</div>
<!-- end of panel collapse -->
</div>
<!-- end of panel default -->
</div>
<!-- end of middle column -->
<div class="col-md-3"> <span>lorem</span>
</div>
<!-- end of 3rd column -->
</div>
</section>
<!-- end of experience -->
Upvotes: 1