Как создать простое боковое меню с помощью jquery? - PullRequest
0 голосов
/ 12 января 2012

У меня есть меню в боковом расположении, и этот код:

<ul>
<li>
    <span class="arz">
        first menu
    </span>
    <ul  id="arz">
        <li>
            first submenu
        </li>
        <li>
            second submenu
        </li>
        <li>
            third submenu
        </li>
    </ul>
</li>
<li class="words">
    two menu
    <ul id="words">
        <li>
            first submenu
        </li>
        <li>
            second submenu
        </li>
    </ul>
</li>

, а код jquery:

$(document).ready(function(){
    $(".submenu").click(function(){
        $(this).children(this).slideToggle("slow");
    });
});

, но я хочу нажать первое меню ul элемент с id="arz" using slideToggle ,<br> this code do it but when i click on every submenu item corresponding ul use slideToggle`.благодаря
Ая

1 Ответ

1 голос
/ 12 января 2012

В вашем коде jquery вы ссылаетесь на класс, которого нет в вашем html.Вот почему это не работает.Вот что-то слегка измененное, что работает, как вы можете видеть в этом примере jsFiddle

HTML

<style>
    ul.submenu{display:none;background:#ccc;}
</style>
<ul class="menu">
    <li class="arz">
        <span>first menu</span>
        <ul id="arz" class="submenu">
            <li>
                first submenu
            </li>
            <li>
                first submenu
            </li>
            <li>
                first submenu
            </li>
        </ul>
    </li>
    <li class="words">
        <span>second menu</span>
        <ul id="words" class="submenu">
            <li>
                second submenu
            </li>
            <li>
                second submenu
            </li>
            <li>
                second submenu
            </li>
        </ul>
    </li>
</ul>

jQuery

$(function(){
    $('ul.menu li').click(function(){
        $(this).find('ul.submenu').slideToggle('slow')
    })
})
...