Webページに大きなgifアニメーションがあり、読み込みが完全に完了するまで開始したくありません。JavaScript / jQueryを使用してそれをどのように可能にしますか?
質問する
5447 次
4 に答える
7
プレースホルダー画像を使用し、GIFが完全に読み込まれたら、アニメーションGIFに置き換えます。
<img id="anim" src="placeholder.gif">
JS:
var myanim = new Image();
myanim.src = '/img/actions.png';
myanim.onload = function() {
document.getElementById('anim').src = myanim.src;
}
于 2012-11-15T14:34:31.367 に答える
1
CSSを使用してGIFを非表示にする(またはJSでプレースホルダーに置き換える)ことができ、GIFが読み込まれると、show()を起動できます。
$('img[src$=".gif"]').load(function(){$(this).show())
于 2012-11-15T14:32:56.663 に答える
1
完全にロードされるまで非表示にすることができます。
<!--- this uses jquery !-->
<script type="text/javascript">
var image_url = "http://media.tumblr.com/tumblr_m4doax3R071r9c1z7.gif";
var image = $('<img />').load(function(){
$(this).show();
}).attr('src', image_url).hide();
$('body').append(image);
</script>
ここでの問題は、画像がダウンロードされると(つまり、ブラウザのキャッシュにあると)、特定のフレームから画像を開始する方法が実際にはないように見えることです。
于 2012-11-15T14:44:02.117 に答える
0
javascriptを使用してgifアニメーションを制御することはできないため、何らかのハックを実装する必要があります。最初は隠しておく必要があります。実際の画像の代わりに、実際の画像のサイズと「待機」のようなテキストを含むdivを配置できます。
画像がブラウザにダウンロードされると、divを画像に置き換えることができます。そしてその時点でアニメーションが始まります
于 2012-11-15T14:38:22.153 に答える