#jquery #hover
#jquery #наведение
Вопрос:
Я пытаюсь найти способ либо отложить оценку наведения, либо альтернативное решение для следующего:
У меня есть элементы с динамически генерируемыми именами классов. Объекты с тем же классом остаются непрозрачными при наведении курсора мыши, остальные изменяют непрозрачность. Я создал пример здесь:http://jsfiddle.net/g7JeQ /.
Проблема в том, что как только мышь переходит от одного элемента к следующему, непрозрачность остальных мгновенно восстанавливается, вызывая эффект мигания. (т. е. 1,2,3 имеют один и тот же класс и 4,5,6 имеют одинаковый. Я хочу устранить это мигание при наведении курсора мыши на элементы одного класса)
Если бы кто-нибудь мог мне помочь, я был бы очень благодарен.
Ответ №1:
Вам нужно остановить предыдущую анимацию с помощью stop()
:
$('span').hover(function() {
var theClass = $(this).attr('class');
$('span:not(.' theClass ')').stop().animate({'opacity': 0.2}, 100);
}, function() {
$('span').stop().animate({'opacity': 1}, 100); //restore all spans to 100% opacity
});
Ответ №2:
Добавьте .stop() перед каждым .animate()
Комментарии:
1. Также спасибо, как раз то, что мне было нужно.