Skip to content

Instantly share code, notes, and snippets.

@neilff
Created July 23, 2013 15:55
Show Gist options
  • Save neilff/6063549 to your computer and use it in GitHub Desktop.
Save neilff/6063549 to your computer and use it in GitHub Desktop.
Basic jQuery Accordion -- Allows user to click twice on the same accordion, which will result in closing the select panel
//
// jQuery
//
;(function (window, document, $) {
// target all panels
var allPanels = $('div.main-links > div.collapse > ul');
$('a.toggle').on('click', function (e) {
e.preventDefault();
allPanels.slideUp(); // force all panels to close
// if the panel selected is hidden, slide it down
if( $(this).next('ul').is(":hidden") ) {
$(this).next('ul').slideDown();
}
});
}(this, document, jQuery));
//
// HTML
//
<div class="main-links">
<div class="collapse">
<a class="toggle" href="#">Products</a>
<ul>
<li>Example 1</li>
<li>Example 2</li>
<li>Example 3</li>
</ul>
</div>
<div class="collapse">
<a class="toggle" href="#">Products</a>
<ul>
<li>Example 1</li>
<li>Example 2</li>
<li>Example 3</li>
</ul>
</div>
<div class="collapse">
<a class="toggle" href="#">Products</a>
<ul>
<li>Example 1</li>
<li>Example 2</li>
<li>Example 3</li>
</ul>
</div>
<div class="collapse">
<a class="toggle" href="#">Products</a>
<ul>
<li>Example 1</li>
<li>Example 2</li>
<li>Example 3</li>
</ul>
</div>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment