У меня есть раскрывающееся меню, и я хочу иметь возможность наводить курсор на каждое раскрывающееся меню с задержкой 0,3 секунды, но когда вы сворачиваете меню, я хочу, чтобы оно приостанавливалось на 2 секунды, прежде чем исчезнуть.
Разметка:
<ul class="mainnav">
<li><a href="#">item 1</a>
<ul class="sub">
<li><a href="#">item a</a></li>
<li><a href="#">item b</a></li>
<li><a href="#">item c</a></li>
</ul>
</li>
<li><a href="#">item 2</a>
<ul class="sub">
<li><a href="#">item d</a></li>
<li><a href="#">item e</a></li>
<li><a href="#">item f</a></li>
</ul>
</li>
</ul>
Jquery:
function(){
$('.mainnav > li').hover(
function () {
$(this).find('sub').fadeIn(300);
},
function () {
$(this).find('sub').fadeOut(300);
}
);
$('.mainnav').mouseout( function() {
setTimeout(function() {
$(this).find('sub').fadeOut(300);
}, 2000);
});
}
Итак, если я прокручиваю «элемент 1», он падает и показывает «элемент a», «элемент b», «элемент c». Если я переворачиваю «элемент 2», он падает и показывает «элемент d», «элемент e», элемент f».
Теперь, если я выхожу из «.mainnav», я хочу, чтобы перевернутый выпадающий список задерживался перед исчезновением.
Но это не то, что он делает. Он просто затухает, как будто перелистывается другой пункт меню.
Заранее спасибо.