該錯誤只在IE中出現,出現該提示的原因主要有兩種:
1. 重定義了系統的觸發事件名稱作為自定義函數名如: onclick / onsubmit … 都是系統保留的事件名稱,不允許作為重定義函數名稱。
2. 出現死循環,都提示:Stack overflow at line: 0 , 如:在圖片對象定義了 onerror 事件的循環處理、
<img src=”http://images.cnblogs.com/a.gif” onerror=”this.src=’/image/block.gif’” />
這里并不是說 /images/a.gif 不存在, 可能是由于網絡原因造成, 這時會執行 onerror 事件, 調用 /images/block.gif 去做當前圖片的路徑, 但如果當前 /image/block.gif 這個圖片文件不存在, 再或者由于網絡原因, ‘/image/block.gif’ 下載又出現錯誤時, 就出現了死循環。
上面哪個例子一般寫成下面這種形式比較保險
<img src=”http://images.cnblogs.com/a.gif” onerror=”this.error = null;this.src=’/image/block.gif’” />
所以在處理 onerror 事件時,要考慮是否是出現這樣的問題。
” Stack overflow at line: 0 “ 該錯誤不是一直出現,是有時會出現, 是網絡不正常導致死循環引起的, 查了好半天, 最后才找到這個原因,做下記號吧, 給有需要的人。
新聞熱點
疑難解答