Контекст: у меня есть блок изображений, абсолютно расположенных друг над другом.При наведении курсора мыши изображения отображаются одно за другим, добавляя класс CSS, который перемещает изображение в верхнюю часть стопки.Когда будет достигнуто последнее изображение, будет показано первое изображение, и оно продолжается до тех пор, пока не исчезнет указатель мыши.
Ссылка: Здесь приведен справочный сайт , чтобы увидеть аналогичный эффект.(наведите курсор мыши на блок изображения).
HTML:
<div id="flicker">
<img src="example1.gif" />
<img src="example2.gif" />
<img src="example3.gif" />
</div>
Код:
var flickerImg = jQuery('#flicker img');
jQuery('#flicker').hover(
function() {
flicker = setInterval(function() {
if (flickerImg.last().hasClass('active')) {
flickerImg.removeClass('active').first().addClass('active');
}
else {
jQuery('#flicker img.active').removeClass('active')
.next().addClass('active');
}
}, 100);
},
function() {
clearInterval(flicker);
});
Вопрос: Кажется, анимация ускоряется после нескольких итераций.Есть ли лучший способ кодирования этого или изменение, чтобы дать более последовательную анимацию?