jquery: 3-х уровневое вертикальное меню - PullRequest
2 голосов
/ 05 октября 2011

Я искал пару часов для меню с 3 уровнями вертикального аккордеона. Примерно так: http://sandbox.scriptiny.com/javascript-accordion/index.html

Что-то действительно простое достаточно, но я не могу заставить что-либо работать с 3 уровнями. Может ли кто-нибудь предоставить мне фрагмент jquery, чтобы начать? Я пытался использовать

 $('li').click(function(){

           $(this).children('ul').children('li').toggle();

        });

но оно также скрывает подменю, а не только текущих детей. Спасибо

Ответы [ 2 ]

9 голосов
/ 05 октября 2011

пример с нуля:

<ul>
    <li>
        level 2
        <ul>
            <li>a</li>
            <li>b</li>
        </ul>
    </li>
    <li>
        level 2
        <ul>
            <li>
                level 3
                <ul>
                    <li>c</li>
                    <li>d</li>
                </ul>
            </li>

            <li>e</li>
            <li>f</li>
        </ul>
    </li>
</ul>

$('li').click(function(ev) {
    $(this).find('>ul').slideToggle();
    ev.stopPropagation();
});

демо: http://jsfiddle.net/aCaEG/

0 голосов
/ 05 октября 2011

отметьте ui.accordion и посмотрите, поможет ли вам.

по-моему, не пытайтесь делать то, что уже существует.

...