JQuery применяется только к текущим - PullRequest
0 голосов
/ 17 мая 2010

Я хочу сдвинуть переключатель второго уровня ul, когда наведу курсор мыши на соответствующий первый уровень li.

В настоящее время скрипт отображает все вторичные ul при наведении мыши.

<div id="subNav">
<ul>
   <li>One</li>
       <ul>
           <li>SubOne</li>
       </ul>
   </li>
   <li>Two</li>
   <li>
       <ul>
           <li>SubTwo</li>
       </ul>
   </li>
</ul>
</div>

А вот и мой jQuery

$("#sideNav ul li").hover(
        function(){
            $('#sideNav ul li ul').slideDown();
        },
        function(){
            $('#sideNav ul li ul').slideUp();
        }
    );

Ответы [ 2 ]

1 голос
/ 17 мая 2010

Вам нужно нацелиться на $(this) внутри функции.

$("#subNav>ul>li").hover(
    function(){
        $(this).children('ul').slideDown();
    },
    function(){
        $(this).children('ul').slideUp();
    }
);

Примечание: выше будет работать только от root ul. Я предполагаю, что это то, что вы хотите сделать.

0 голосов
/ 17 мая 2010

попробовать:

$(this).find('ul')

Я не проверял это.

НТН

...