Я делаю вложенный ul, скользящий вниз, когда на его родительском устройстве щелкают для навигации клиентов, поэтому родительская ссылка деактивируется с возвратом false. Но возвращаемое ложное также деактивирует дочерние ссылки, как мне этого избежать?
$("li.page_item a:first-child").click(function() {
//select it's direct sub ul
var subnav = $(this).next();
//other subnavs
var navsibling = $(this).parent().siblings('li').children('ul');
//hide siblings subnav
if (navsibling.is(":open")) {
navsibling.slideUp("slow");
}
// check to see if sub is hidden, open if it is, close if it isn't
if (subnav.is(":hidden")) {
subnav.slideDown("slow");
} else {
subnav.slideUp("slow");
}
// stop the top level link from linking
return false;
});
Я думал, что использование: first-child будет применять возвращаемое значение false только к этому конкретному a, а не к любому из дочерних элементов его брата ... предложения?
Редактировать: Это виджет страниц списка в WordPress, в основном разметка это:
<ul>
<li class="page_item"><a href="">Link</a>
<ul>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
</ul>
</li>
<li class="page_item"><a href="">Link</a>
<ul>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
<li><a href="">SubLink</a></li>
</ul>
</li>
</ul>