Прежде всего, цель - создать собственное раскрывающееся меню, чтобы узнать jQuery. Если я слишком быстро передвигаю мышь и выключаю кнопки навигации, очередь анимации будет застроена, а анимация продолжится в течение нескольких секунд после остановки. Я нашел несколько тем форума, которые указывают .stop (true) - это решение проблем с наращиванием очереди очереди jQuery. Тем не менее, это не похоже на мою проблему при использовании нескольких анимаций в инструкции.jQuery Animation Queue И .stop (true)
Вот код (я опустил CSS.)
<html>
<head>
<title>My First DropDown Menu</title>
<script language="javascript" src="js/jquery-1.7.1.min.js"></script>
<script language="javascript" src="js/jquery-ui-1.8.16.custom.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/menu.css" />
<script language="javascript">
$(document).ready(function() {
$("div.bSlider ul li").hover(function() {
$(this).stop(true, true).animate({ backgroundColor: "#898989", color: "#d01d33" }, 500, function() {}).find("ul").slideDown(200, function(){});
}, function() {
$(this).stop(true, true).animate({ backgroundColor: "#d01d33", color: "#ffc074"}, 0, function() {}).find("ul").slideUp(100, function(){});
});
});
</script>
</head>
<body>
<div class="bSlider">
<ul>
<a href="#"><li>Menu Item #1</li></a>
<a href="#"><li>Menu Item #2</li></a>
<a href="#"><li>Menu Item #3</li></a>
<a href="#"><li>Menu Item #4</li></a>
<a href="#"><li>Menu Item #5
<ul>
<a href="#"><li>Sub-menu Item #1</li></a>
<a href="#"><li>Sub-menu Item #2</li></a>
<a href="#"><li>Sub-menu Item #3</li></a>
<a href="#"><li>Sub-menu Item #4</li></a>
</ul>
</li></a>
<a href="#"><li>Menu Item #6</li></a>
</ul>
</div>
</body>
</html>