Files
AtomicOld/design/atomic/js/jquery.liHarmonica.js

44 lines
1.4 KiB
JavaScript
Raw Permalink Normal View History

2026-02-15 18:29:53 +03:00
/*
* jQuery liHarmonica v 1.0
*
* Copyright 2013, Linnik Yura | LI MASS CODE | http://masscode.ru
* http://masscode.ru
* Free to use
*
* 04.01.2013
*/
(function($){
$.fn.liHarmonica = function(params){
var p = $.extend({
currentClass:'cur', //Класс для выделенного пункта меню
onlyOne:true, //true - открытым может быть только один пункт,
//false - число открытых одновременно пунктов не ограничено
speed:500 //Скорость анимации
}, params);
return this.each(function(){
var
el = $(this).addClass('harmonica'),
linkItem = $('ul',el).prev('a');
el.children(':last').addClass('last');
$('ul',el).each(function(){
$(this).children(':last').addClass('last');
});
$('ul',el).prev('a').addClass('harFull');
el.find('.'+p.currentClass).parents('ul').show().prev('a').addClass(p.currentClass).addClass('harOpen');
linkItem.on('click',function(){
if($(this).next('ul').is(':hidden')){
$(this).addClass('harOpen');
}else{
$(this).removeClass('harOpen');
}
if(p.onlyOne){
$(this).closest('ul').closest('ul').find('ul').not($(this).next('ul')).slideUp(p.speed).prev('a').removeClass('harOpen');
$(this).next('ul').slideToggle(p.speed);
}else{
$(this).next('ul').stop(true).slideToggle(p.speed);
}
return false;
});
});
};
})(jQuery);