Многоуровневый аккордеон
Добрый вечер дорогие друзья , пишу вам с очередной просьбой , помочь мне, разобраться с многоуровневым аккордеоном
<div class='some-class'>
<ul id='accordion'>
<li>
<p>Нажмите тут</p>
<span class='plus'></span>
<span class='minus'></span>
<ul class='sub-menu'>
<li>
<p>Нажмите тут</p>
<span class='plus'></span>
<span class='minus'></span>
<ul class='sub-menu-2'>
<li></li>
<ul>
</li>
</ul>
</li>
</ul>
</div>
так же у меня в хтмл разметке присутствуют спаны, один с плюсиком , второй с минусом , и имееться класс эктив с другим цветом текста. так вот,я никак не могу сделать так, что бы при клике добавлялся класс к тому списку на который был осуществлен клик и также спан с плюсиком менялся на минус . что бы подчеркнуть открытый пункт
$(document).ready(function(){
$('#accordion > li ul').click(function(event){
event.stopPropagation();
})
.filter(':not(:first)').hide();
$('#accordion > li, #accordion > li > ul > li').click(function(){
var selfClick = $(this).find('ul:first').is(':visible');
if(!selfClick) {
$(this).parent().find('> li ul:visible').slideToggle();
$(this).find(".minus").fadeToggle('fast');
};
$(this).find('ul:first').stop(true, true).slideToggle();
$(this).find(".plus").fadeToggle('fast');
});
});
Короче что то я тут намутил со спанами . ничего не получается . С уважением Антон |
Anton Essential,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.minus, .sub-menu {
display: none;
}
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function() {
$('ul li').on('click',function(event) {
event.stopPropagation();
var elements = $('ul:first, .plus:first, .minus:first', $(this));
elements.toggle()
});
});
</script>
</head>
<body>
<div class='some-class'>
<ul id='accordion'>
<li>
<p>Нажмите тут</p>
<span class='plus'>+</span>
<span class='minus'>-</span>
<ul class='sub-menu'>
<li>
<p>Нажмите тут</p>
<span class='plus'>+</span>
<span class='minus'>-</span>
<ul class='sub-menu'>
<li>123</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</body>
</html>
|
Оу оу , нуда , не так как я себе это представлял , спасибо рони
|
| Часовой пояс GMT +3, время: 02:04. |