0

私は自分のサイトにたくさんの画像をロードしていますが、我慢すれば問題なく動作します。しかし、画像の読み込み中にアクションを実行するとmyDiv.style.display = 'none';、すべての画像が完成していないため、画像が width=height=0 になることがあります。div を再度表示すると、それらは表示されませんが、幅 = 高さ = 0 を検索して識別できます。

幅と高さを 0 より大きい値に設定すると、画像が表示されますが、実際のサイズが失われます。また、次のようなものを追加して image.src を変更しようとしましたmyImage.src += "?t=random";。これを行うと、myImage.onload関数が再び起動されますが、幅と高さはまだ 0 です。

画像の実際のサイズを取得するにはどうすればよいですか、または強制的にリロードするにはどうすればよいですか?

4

2 に答える 2

1

画像要素にイベントを添付できます。

image.onload = function () { /* Your code here */ };

これは、イメージが実際にロードされたときに発生します。

src 要素を設定する前にこのイベントがアタッチされていることを確認し、src が実際に有効であることを確認してください。これは、Google Chrome の [ネットワーク] パネル (Windows では F12) で確認できます。

于 2014-08-01T17:01:24.113 に答える