Simple Acordion
With functions
by makloon
HTML
<div class="step" id="step1">
<a class="step-title"> Step 1
<span class="edit">Edit</span>
<span class="close"> Close</span>
</a>
<div class="step-content">
<p>
I am the step's content. <br/>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
</p>
<a class="save" data-step="step2">Next</a>
</div>
</div>
<div class="step" id="step2">
<a class="step-title"> Step 2
<span class="edit">Edit</span>
<span class="close"> Close</span>
</a>
<div class="step-content">
<p>
I am the step's content. <br/>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
</p>
<a class="save" data-step="step3">Previous</a>
</div>
</div>
CSS
body {
font-family: arial;
background-color: #eee;
}
.step-title > span, .sub-step-title > span {
font-size: 12px;
padding: 2px 4px;
color: #fff;
border-radius: 2px;
float: right;
}
.edit {
background-color: green;
display: none;
}
.close {
background-color: gray;
display: none;
}
.step {
background-color: #fff;
margin-bottom: 4px;
}
.sub-step {
background-color: #eee !important;
margin-bottom: 10px;
}
.step-title {
background-color: #ddd;
padding: 15px;
display: block;
cursor: pointer;
}
.sub-step-title {
background-color: #e3e3e3 !important;
display: block;
padding: 15px;
}
a.step-title.active, a.step-title.lastx {
background-color: #ccc;
font-weight: bold;
}
a.sub-step-title.active {
background-color: #c3c3c3 !important;
font-weight: bold;
}
.step-content {
padding: 10px 10px 5px 10px;
display: none;
}
.step-content p {
margin: 0;
}
.sub-step-content {
padding: 10px 10px 5px 10px;
}
.save, .sub-save, .sub-save-last {
background-color: green;
padding: 10px 8px;
color: #fff;
display: inline-block;
margin: 10px 0;
}
JavaScript
$(document).ready(function(){
// Click on TITLE
$(".step-title").click(function(){
var this_title = $(this).parents(".step").children(".step-title");
var this_content = $(this).parents(".step").children(".step-content");
var that_title = $(".step-title");
var that_content = $(".step-content");
if (this_title.hasClass("active"))
{
this_title.removeClass("active");
this_content.slideUp(200);
} else {
that_title.removeClass("active");
this_title.addClass("active");
that_content.slideUp(200);
this_content.slideDown(200);
}
});
// Click on BUTTON
$(".save").click(function(){
var this_title = $(this).parents(".step").children(".step-title");
var this_content = $(this).parents(".step").children(".step-content");
var that_title = $(".step-title");
var that_content = $(".step-content");
if (this_title.hasClass("active"))
{
that_title.addClass("active");
this_title.removeClass("active");
that_content.slideDown(200);
this_content.slideUp(200);
}
});
});