it works fine for one div
(function($) {
$(document).ready(function(){
$('#div1').hide();
$('a.plus').click(function(){
$('#div1').slideToggle();
$(this).toggleClass("minus_icon");
return false;
});
});
})(jQuery);
How to make this slide toogle effect for multiple div
on same page? I have multiple div
s with different id to hide like #div1
, #div2
, div#3
.
edit:
This is situation in html
<a class="plus"> more details </a>
<div id="div1" class="description">
<p> Hidden content here </p>
</div>
<a class="plus"> more details </a>
<div id="div2" class="description">
<p> Hidden content here </p>
</div>
<a class="plus"> more details </a>
<div id="div3" class="description">
<p> Hidden content here </p>
</div>
Presuming your HTML is something like this:
Then having a function like this will work for as many
a.plus
/div
pairs you have:If your
a.more
s are, for whatever reason, nowhere near thediv
s themselves, you will have to set an attribute on thea.more
to link it to a div, eg. (HTML)and Javascript:
(function($) { $(document).ready(function(){ $('#div1, #div2, #div3').hide(); $('a.plus').click(function(){ $(this).next().slideToggle(); $(this).toggleClass("minus_icon"); return false; }); }); })(jQuery);
Give your divs the same class (like 'div_to_toggle') and then instead of $('#div1'), $('#div2'), ... you can use one selector: $('.div_to_toggle') that will select them all: