Есть блок. При его наведении, в нём же, появляется скрытый блок с функционалом. Для отображения я использую slideDown/Up в JQuery.
Код JS:
$('li.block').hover(function () {
$(this).find('div.info-block').slideDown();
}, function () {
$(this).find('div.info-block').slideUp();
});
И я заметил такую штуку. Если часто наводить и отводить курсор с блока то то что ещё не выполнилось, а именно slideDown/Up будут выполнятся столько раз сколько мы навели. Пример, для пояснения - навожу и убираю быстро 10 раз. Потом убираю курсор и пока этот блок не сделает slideDown/Up 10 раз он не остановится.
Вопрос. как такое можно поправить?
Ответ
остановите предыдущую анимацию, перед началом новой
$('li.block').hover(function () {
$(this).find('div.info-block').stop().slideDown();
}, function () {
$(this).find('div.info-block').stop().slideUp();
});
Комментариев нет:
Отправить комментарий