I have two accordions on the same page
First, I have a page, Freemarker, that includes two other Freemarkers that have the accordion.
[#include "page1.ftl"]
[#include "page2.ftl"]
On page1:
<h3 class="trigger"><div id="toggle-image"> Page1</div></h3>
<div class="toggle-container">
On page2:
<h3 class="trigger2"><div id="toggle-image2"> Page2</div></h3>
<div class="toggle-container2">
In the Javascript file:
$(document).ready(function(){
$('#toggle-image').attr("class", "toggle-image-expand");
//Hide (Collapse) the toggle containers on load
$(".toggle-container").hide();
$("h3.trigger").click(function(){
$(this).toggleClass("active").next().slideToggle("slow");
if($('#toggle-image').attr("class") == "toggle-image-collapse") {
$('#toggle-image').attr("class", "toggle-image-expand");
} else {
$('#toggle-image').attr("class", "toggle-image-collapse");
}
return false;
});
});
$(document).ready(function(){
$('#toggle-image2').attr("class", "toggle-image-expand");
//Hide (Collapse) the toggle containers on load
$(".toggle-container2").hide();
$("h3.trigger2").click(function(){
$(this).toggleClass("active").next().slideToggle("slow");
if($('#toggle-image2').attr("class") == "toggle-image-collapse") {
$('#toggle-image2').attr("class", "toggle-image-expand");
} else {
$('#toggle-image2').attr("class", "toggle-image-collapse");
}
return false;
});
It works fine, but the redundant code I used in JS is typical and the difference is on the variable it uses. How could I make it dynamic?