нашел вариант к списку подкаталогов присвоить селектор :
<ul id="menu2">
<li><a href="#">Подкаталог 1</a></li>
<li><a href="#">Подкаталог 2</a></li>
<li><a href="#">Подкаталог 3</a></li>
</ul>
ну а далее .toggle() :
function initMenu() {
$('#menu ul').hide();
$('#menu ul:first, #menu li:first ul').show();
$('#menu li a').click(
function() {
$('#menu2, #menu2 li, #menu2 li a').toggle()
var checkElement = $(this).next();
if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
return false;
}
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#menu ul:visible, #menu li:visible ul').slideUp('normal');
checkElement.slideDown('normal');
return false;
}
}
);
}
$(document).ready(function() {initMenu();});
На сколько это правильно? А вот без второго селектора, как изначально задумано, никак - не могу понять как указать в таком случае вложенность.
P.S. и так при клике на любом пункте <ul id="menu2">....</ul> закрывается.