У меня проблема с переключением анимации с помощью JQuery.У меня есть меню с подпунктами, которые открываются при наведении на основной пункт.Этого я могу добиться прекрасно, однако для длинного списка элементов я предпочел бы иметь возможность остановить открытие и закрыть меню, не дожидаясь завершения анимации slideDown ().
$('.menubar-topitem').on('mouseenter',function(){
$(this).children('.menubar-inner').stop(true).slideDown();
}).on('mouseleave',function(){
$(this).children('.menubar-inner').stop(true).slideUp();
});
Этот код выполняет то, что мне нужно, однако, когда я снова наведу курсор мыши на элемент меню, подменю открывается только до того момента, когда анимация была достигнута до того, как я остановил его в первый раз.Кажется, что JQuery сохраняет высоту подменю с момента, когда анимация была остановлена в первый раз, а затем открывается только до этого во второй раз.
Я знаю, что могу решить эту проблему с помощью stop (правда, правда) но это создает ужасный скачок в анимации.Могу ли я в любом случае предотвратить это поведение, не выполняя анимацию или обходные пути, чтобы пользователь не видел никаких переходов, а вместо этого видел текущую систему меню?