Я думаю, что нет способа обнаружить это из JavaScript. Я бы выбрал другое решение.
Создание статического изображения (может быть в любом формате, JPEG, PNG, GIF), в котором кадры исходной анимации находятся под каждым
Другой. Как это:
┌───┐
│ 1 │
├───┤
│ 2 │
├───┤
│ 3 │
├───┤
│ 4 │
└───┘
Затем вы можете создать <div/>
, например, с размерами фрейма и установить это длинное статическое изображение в качестве фона, а затем перемещать фон через каждые n-е миллисекунды.
Проверенный код
$(function() {
var width = 20, height = 20, frames = 3;
var $div = $(document.createElement('div'))
.css({
backgroundImage: 'url(test.png)',
width: width + 'px',
height: height + 'px'
})
.appendTo(document.body);
var frame = 0;
setInterval(function () {
frame++;
if (frame > frames) { frame = 0; }
$div.css('background-position', '0 ' + -1 * frame * height + 'px');
}, 250);
});
Обновление
Google сделал то же самое с кнопками +1, но они сделали это по горизонтали, а не по вертикали, как в предыдущем примере: отметьте здесь .