jquery.accordion.menu.js
30 lines
| 735 B
| application/javascript
|
JavascriptLexer
|
r0 | /* | |
* Menu accordion plugin for jQuery, by David Rojas (c) 2010 | |||
* http://www.davidrojas.net | |||
*/ | |||
(function(jQuery){ | |||
jQuery.fn.accordionMenu = function(custom) { | |||
var defaults = { | |||
keepOpen: false, | |||
startingOpen: false | |||
} | |||
var settings = jQuery.extend({}, defaults, custom); | |||
if(settings.startingOpen){ | |||
jQuery(settings.startingOpen).show(); | |||
} | |||
return this.each(function(){ | |||
var obj = jQuery(this); | |||
jQuery('li a', obj).click(function(event){ | |||
var elem = jQuery(this).next(); | |||
if(elem.is('ul')){ | |||
event.preventDefault(); | |||
if(!settings.keepOpen){ | |||
obj.find('ul:visible').not(elem).not(elem.parents('ul:visible')).slideUp(); | |||
} | |||
elem.slideToggle(); | |||
} | |||
}); | |||
}); | |||
}; | |||
})(jQuery); |