VoxelGod
@VoxelGod
Настройка шаблонов WordPress

Как можно исправить сие JS недоразумение?

Здравствуйте. Верстал себе спокойно сайт, написал небольшой скриптик. Сижу, радуюсь, что все работает.
Но не тут-то было...
https://jsfiddle.net/p5Ln9qn0/

При наведении на кружочек вместо картинки должна появляться надпись. И все бы хорошо, но если быстро навести, затем убрать мышь и снова навести, то отобразятся картинка вместе с текстом одновременно. Надеюсь, понятно объяснил(слава богу есть jsfiddle).

Как можно исправить этот баг?
Заранее спасибо!
  • Вопрос задан
  • 270 просмотров
Решения вопроса 3
mannaro
@mannaro Куратор тега JavaScript
Умею профессионально гуглить
Зачем тут JS? Юзай transitions (пример накидал на коленке).
https://jsfiddle.net/JWo1F/p5Ln9qn0/1/
Ответ написан
allard
@allard
Серийный программист
По вашему вопросу. Нужно остановить анимацию элемента stop():
$('.circle').hover(
    function() {
        $(this).animate({backgroundColor: '#F9EC7C'}, $duration);
        $(this).find('img').stop().fadeOut($duration, function () {
            $('.circle').find('p').fadeIn($duration);
        })
    },
    function(){
        $(this).animate({backgroundColor: '#f8f991'},$duration);
        $(this).find('p').fadeOut($duration, function(){
            $('.circle').find('img').stop().fadeIn($duration);
        });
    }
);
Ответ написан
Комментировать
aliencash
@aliencash
Партизан
Зачем тут в принципе js?
codepen.io/aliencash/pen/GopdQw
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
nepritimov_m
@nepritimov_m
Frontend dev.
Можно сделать флаг и проверять его состояние при наведении.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы