Adalah normal untuk pengembangan web untuk mendapatkan lebar dan tinggi gambar. Gambar tidak dapat memperoleh lebar dan tinggi gambar sebelum dimuat. Hanya setelah pemuatan gambar dapat diselesaikan, lebar dan tinggi gambar itu sendiri diperoleh. Misalnya:
Salinan kode adalah sebagai berikut:
var img = gambar baru ();
img.src = "loading.gif";
img.onload = function () {
peringatan (img.width);
};
OKE? Kode ini tampaknya baik -baik saja, tetapi akan ada bug di IE, yaitu, tidak ada masalah ketika IE dibuka untuk pertama kalinya, dan itu akan menjadi tragedi ketika menggunakan metode ini untuk kedua kalinya. IE tidak memiliki tanggapan, dan itu akan sama bahkan jika halaman disegarkan. Karena IE akan cache gambar, gambar yang dimuat kedua tidak diunggah dari server, tetapi dimuat dari buffer.
Pertama -tama tulis metode onload, dan kemudian tentukan URL gambar ini, yang normal. Jadi, bukan karena IE tidak memicu acara Onload, tetapi karena buffer dimuat begitu cepat sehingga acara Onload telah dipecat ketika IMG.Onload tidak berjalan. Tidak apa -apa.
Salinan kode adalah sebagai berikut:
var img = gambar baru ();
img.onload = function () {
peringatan (img.width);
};
img.src = "loading.gif";