Вы можете сделать это разными способами. Однако самым простым будет тот, который вы уже реализовали, поместив триггер и target на одном уровне дерева и просто переключив элемент рядом с триггером, используя next()
Редактировать: Как и сейчас, вы предоставили свой собственный HTML-код, который имеет некоторые отличия от того, который я предполагал ранее. Поэтому вам нужно позвонить parentsUntil()
перед тем, как позвонить next()
, чтобы выполнить работу.
$(document).ready(function() {
$("a.main-category").click(function() {
$(this).next("div.sub-category").toggle();
});
$("a.show-item").click(function() {
$(this).parentsUntil("ul").next("ul.show-subitem").toggle();
});
});
Кроме того, вам также необходимо добавить это к вашему CSS :
.show-subitem {
display: none;
}