Saat membuka halaman web, muncul Stack overflow di baris: 0. Saya membuat tangkapan layar sebagai berikut:
Setelah dianalisis, ditemukan ada kode serupa dengan berikut di halaman web:
<img src="pic.gif" onerror="javascript:this.src='/noPic.gif';" />
Analisis: Berikan perhatian khusus pada onerror. Jika gambar tidak ada, onerror akan terpicu, dan onerror menentukan gambar NoPic.gif untuk img. Artinya, jika gambar ada, pic.gif akan ditampilkan, dan jika gambar tidak ada, noPic.gif akan ditampilkan. Namun disinilah masalahnya. Jika noPic.gif tidak ada, onerror akan terus terpicu sehingga menimbulkan loop sehingga terjadi error.
Catatan: Jika gambar ada tetapi jaringan tidak lancar, kesalahan juga dapat dipicu.
Solusi: Pertama: Hapus kode onerror; atau ubah kode onerror ke yang lain atau pastikan gambar di onerror cukup kecil dan ada.
Tipe kedua:
<skrip tipe="teks/javascript">
<!--
fungsi tidak ditemukan(){
var img=acara.srcElement;
img.src="../../../sys/common/image/fileoperation/icon/default.gif";
img.onerror=null; kontrol untuk tidak terus berdetak
}
//Jika tidak ditemukan, gunakan event untuk mendapatkannya satu per satu
//-->
</skrip>
<td align="center"><img src="../../../sys/common/image/fileoperation/icon/${file.suffix }.gif" onerror="nofind();" >${file.nama}</td>
Tipe ketiga:
Gunakan dua <img />
<gaya tipe="teks/css">
tersembunyi {
tampilan: tidak ada;
}
</gaya>
<img src="xxx.jpg" onerror="ini.kelas='tersembunyi';xx.kelas=''" />
<img src="xxx.jpg" />