jQuery 構文 :$("<img src='img.jpg'>")
を使用すると、イメージは実際にクライアントにダウンロードされますか? または、ダウンロードするために本文に追加する必要がありますか?
3 に答える
画像を読み込むためにドキュメントに画像要素を追加する必要はありません。
画像要素自体は、画像を作成するとすぐに (そして値を持つとすぐにsrc
) 画像を要求します。
これを実行すると、(Firebug/Developer Tools で) net activity を監視します: http://jsfiddle.net/Guffa/AvgVN/
これを使用する大量のコード例を見つけるには、Google の「javascript プリロード」を参照してください。
はい、画像はすぐにダウンロードされます。
作成されたImage
要素はまだ DOM にありませんが、.src
属性が設定されるとすぐにブラウザーは要素のダウンロードを開始します。
独自のアバターを使用して、コンソールでこれを実行しました。
> i = $('<img src="http://graph.facebook.com/100002351317104/picture?type=large">');
...
> i[0].width
180
画像が実際に読み込まれていることを示しています。
考えてみれば、これは実際にそうであるに違いありません。画像のプリロードは、デタッチされたImage
ノードの作成とその設定に依存します。src
これはまさに何$("<img src=...>")
をするかです。
はい、またはおそらくブラウザに依存します。
$("<img src='http://crssrd.com/web_apps/index/themes/crssrd.com/images/loading.gif'>")
たとえば、Chrome でこれをテストします。 http://jsfiddle.net/SMnhU/ 画像はすぐにダウンロードされます。