jQuery « Ищу скрипт сворачивания- схлопывания вложенных списков ul

наверняка есть что то готовое =)

1 ответов


Думаю готовое есть, но если поиски готового решения займут больше 5 минут, но овчинка выделки не стоит. Написать самому быстрей.
Давайте попробуем написать. Этот код я написал за 4 минуты.


<html>
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <style>
            .menu li{
                cursor:pointer;
            }
            .menu ul li ul{
                display: none;
            }
            .menu .active > ul{
                display:block;
            }
        </style>
        <script>
            $(document).ready(function(){
                $('#menu li').click(function(e){
                    e.stopPropagation();//Отменяем клик на родительский LI
                    if($(this).hasClass('active')){
                        $(this).removeClass('active');
                    }else{
                        $(this).addClass('active');
                    }
                });
            });
        </script>
    </head>
    <body>
        <div id="menu" class="menu">
            <ul>
                <li>1 level
                    <ul>
                        <li>1.1 level  
                            <ul>
                                <li>1.1.1 level</li>
                                <li>1.1.2 level</li>
                                <li>1.1.3 level</li>
                            </ul>
                        </li>
                        <li>1.2 level  
                            <ul>
                                <li>1.2.1 level</li>
                                <li>1.2.2 level</li>
                                <li>1.2.3 level</li>
                            </ul>
                        </li>
                    </ul>
                </li>
                <li>2 level
                    <ul>
                        <li>2.1 level  
                            <ul>
                                <li>2.1.1 level</li>
                                <li>2.1.2 level</li>
                                <li>2.1.3 level</li>
                            </ul>
                        </li>
                        <li>2.2 level  
                            <ul>
                                <li>2.2.1 level</li>
                                <li>2.2.2 level</li>
                                <li>2.2.3 level</li>
                            </ul>
                        </li>
                    </ul>
                </li>            
            </ul>
    </body>
</html>