Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Разворачивается только первый элемент в списке (https://javascript.ru/forum/jquery/33714-razvorachivaetsya-tolko-pervyjj-ehlement-v-spiske.html)

dezzignet 05.12.2012 12:02

Разворачивается только первый элемент в списке
 
Здравствуйте, подскажите, почему разворачивается только первый элемент в списке?

<ul class="menu">

   <li>
      <span id="nolink">первый</span>
      <ul class="menu">
         <li>ААААА</li>
      </ul>
   </li>

   <li>
      <span id="nolink">второй</span>
      <ul class="menu">
         <li>БББББ</li>
      </ul>
   </li>

<ul>


$(function(){
        $('ul.menu>li ul.menu').hide()
    });
    
   $(function(){
        $('#nolink').click(function(){
            $(this)
                .parent()
                .find('ul')
                .slideToggle('slow');
        });
    });

Tek 05.12.2012 12:43

у <span id="nolink">первый</span> парентом являться <li>, а не <ul class="menu">

$('#nolink').click(function(){
            $(this)
                .parent()
                .parent()
                .find('ul')
                .slideToggle('slow');
        });

dezzignet 05.12.2012 12:50

Спасибо, но тогда при нажатии открываются оба элемента <li>, а мне нужно чтобы раскрывался внутренний ul.menu. Но как я уже говорил, он открывается только у первого <li>, но не у второго.

Tek 05.12.2012 13:01

тогда вот:
$('#nolink').click(function(){
            $(this)
                .parent()
                .parent()
                .find('ul.menu')
                .slideToggle('slow');
});

dezzignet 05.12.2012 13:26

вы пишите то же самое. это не подходит

Tek 05.12.2012 13:37

Задача чтобы при клике на #nolink развернулись оба списка?

dezzignet 05.12.2012 13:53

Нет, чтобы при нажатии на каждый #nolink, отображался ul.menu, который находиться рядом с ним

Tek 05.12.2012 14:12

посмотрите тут
Ваша ошибка была в том что нельзя использовать id несколько раз, id - уникальный идентификатор и может быть только 1 раз на странице, если элементы повторяются используйте класс

dezzignet 05.12.2012 14:51

Спасибо, большое! А я всю голову сломал )


Часовой пояс GMT +3, время: 10:01.