それらをプリロードしない限り、画像にはビデオと同じ問題があり、ほとんどのセルラーで少なくとも 700 ミリ秒の遅延があります。
できることは、Google がアニメーションの Doodle に対して行っているのと同じように、画像スプライトをフィルム リールとして機能させることです。基本的に、アニメーション全体を 1 つの長い画像に入れ、それを背景として配置し、JavaScript を使用してフレームごとに背景の位置を進めます。たとえば、3 秒の 200x100 画像を 100 ミリ秒ごとに進めたい場合は、次のようにします。
<div class="thumb" style="background-image: url(vid1.png); width:200px; height:100px" data-frames="30">
</div>
$('.thumb').bind('click', function() {
var $img = $(this);
var startTime = Date.now();
var frames = $img.attr('data-frames');
var width = $img.width();
setInterval(function() {
var frame = Math.round((Date.now() - startTime) / 100) % frames;
$img.css('background-position', -frame * width + 'px 0';
}, 100);
});
アップデート
ここでは画像を使用しているだけなので、フォーマットに縛られることはありません。最善の方法は、フィルムストリップを 60% または 85% の JPG として再エンコードし、ファイル サイズを大幅に削減することです。アニメ化しているので、品質はあまり重要ではありません。
更新 2
タイムアウトが完全でない場合に備えて、フレーム スキップを含めるつもりでした。