Всем привет. У меня есть список:
$('.top').click(function() {
if ($(this).hasClass('open-menu')) {
$(this).removeClass('open-menu');
$(this).parent().children('.pod-menu').slideUp('slow');
} else {
$(this).addClass('open-menu');
$(this).parent().children('.pod-menu').slideDown('slow');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>
<span class='top'>Одежда для малышей</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
<li>
<span class='top'>Одежда для женщин</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
<li>
<span class='top'>Одежда для мужчин</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
<ul>
По клику на top
, у меня к pod-menu
добавляется dislpay: block
, но если нажать на другую категорию, то у предыдущей категории подменю не скрывается. Подскажите как можно сделать так, чтобы по клику на одну категорию подменю раскрывалось только у нее, а у остальных скрывалось?
Ищем все подменю, кроме текущего, и закрываем. Я не стал выделять одинаковые фрагменты кода в переменные, чтоб было понятней, но вам следует это сделать
$('.pod-menu').slideUp()
// $('.pod-menu').not($(this)).slideDown()
$('.top').click(function () {
if ($(this).hasClass('open-menu')) {
$(this).removeClass('open-menu');
$(this).parent().children('.pod-menu').slideUp('slow');
} else {
$(this).addClass('open-menu');
$('.pod-menu').not($(this).parent().children('.pod-menu')).slideUp()
$(this).parent().children('.pod-menu').slideDown('slow');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>
<span class='top'>Одежда для малышей</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
<li>
<span class='top'>Одежда для женщин</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
<li>
<span class='top'>Одежда для мужчин</span>
<div class='pod-menu'>
<a>Шапки</a>
<a>Обувь</a>
</div>
</li>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте! Удаляю на странице через DOM объекты, но после удаления, оставшиеся объекты перемещаются без выравнивания по сетке, как можно...
Например, есть элемент textarea, пользователь туда вводит какое-нибудь сообщение, и с помощью PHP нужно записать эти данные в переменную, чтобы...
Как сделать, что бы в wordpress можно было менять абзацы?