Предполагая, что в #navigation
div есть только один ul
:
$('#navigation ul > li').hover( /* rest of jQuery function */ );
Используемый выше селектор выбирает только li
элементы, которые являются прямыми потомками ul, который сам является потомком элемента id="navigation"
.
Вы также можете просто применить идентификатор к ul
, например id="navList"
, а затем использовать:
$('#navList > li').hover( /* rest of jQuery function */ );
<ч />
Отредактировано после изменения вопроса ОП / опубликовано (x) html.
С учетом следующей разметки:
<ul id="navigation">
<li>List item 1
<ul>
<li>Sub List Item 1</li>
<li>Sub List Item 2</li>
<li>Sub List Item 3</li>
</ul>
</li>
<li>List Item 2</li>
<li>List Item 3</li>
</ul>
И при условии, что он хочет, чтобы пользователь наводил курсор на элементы li
, чтобы показать, что li
s child ul
:
$('#navigation > li').hover(
// selects any li that's a direct descendant of the ul with id="navigation"
function() {
$('ul', this).stop(true,true).animate({opacity:'toggle'},fast);
// looks for 'ul' elements inside the currently-selected 'this' object.
// have a look at the jQuery api for more information on this approach: http://api.jquery.com/jQuery/
}
);
Обратите внимание, что я не проверял функцию, которую вы пытаетесь применить, я верю, что она уже работает.