Предположим, у меня есть меню списка:
<html>
<body>
<div id="menu">
<ul>
<li>News
<ul class="inner_menu">
<li>Hi</li>
</ul>
</li>
<li>Bumble
<ul class="inner_menu">
<li>Hellos</li>
</ul>
</li>
<li>Scratch</li>
<li>Snap</li>
</ul>
</div>
</body>
</html>
И я хочу, чтобы все неупорядоченные списки были скрыты, но slidedown/up (jquery slideToggle()), если вы наведете над элементом "li", в котором они вложены. У меня возникают проблемы с выбором правильных элементов. Например, я хочу, чтобы slideToggle().inner_menu с "Привет", когда я нависаю над "Новостями".
До сих пор мне удалось скользить() все из.inner_menus или получать разные нежелательные результаты. Я думаю, что я могу просто добавить кучу разных идентификаторов, но это было бы так грязно, учитывая два похожих меню с большим количеством inner_menus.
Вы можете использовать hover
in/out handler:
$('li').hover(function(){
$(this).children('ul').slideToggle();
});
li
из .inner_menus ul
является ссылкой. Как только вы щелкнете по нему, часть рядом с меню изменится, но меню останется на своем месте. Предположим, что я использовал $('li').click()
.inner_menu
$('li').click()
вместо этого (и сначала я скрываю все .inner_menu
), затем после того, как я .inner_menu
на News
и затем Hi
, часть веб- .inner_menu
изменится, но и Hi
исчезнет. Это немного странно, потому что вам придется нажимать на нее каждый раз. Я бы хотел, чтобы он оставался в том же статусе, который скрыт или показан.