IE中出現 "Stack overflow at line" 錯誤的解決方法


在做網站時遇到一個問題,網站用的以前的程序,在沒有改過什么程序的情況下,頁面總是提示Stack overflow at line 0的錯誤,而以前的網站都正常沒有出現過這種情況,在網上找了一下解決辦法如下:我的程序出現這種錯誤的原因是第2種,我在圖片中使用了onerror事件,當圖片加載出問題時就是顯示一個默認圖片,然而在我的網站目錄中並不存在這張默認圖片,而源指定的圖片也不存在,所以會觸發onerror事件,由於兩個圖片都不存在,所以導致了一個死循環,導致內存溢出。

出現該錯誤提示,主要有兩種原因:

      1. 使用系統的事件名稱作為自定義函數名如:

            onclick / onsubmit ... 都是系統保留的事件名稱,不允許作為重定義函數名稱。

      2. 出現死循環 :

           如:在圖片對象定義了 onerror 事件的循環處理、

           <img src="http://www.hoocar.com/1.gif" onerror="this.src='/image/default.gif'" />

           這里並不是說 1.gif 不存在, 可能是由於網絡阻塞原因造成, 這時會執行 onerror 事件,

           調用 /images/default.gif 去做當前圖片的路徑, 但如果當前 /image/default.gif 這個圖片文件不存在,

           再或者由於網絡原因, 下載'/image/default.gif' 又出現錯誤, 這就出現了死循環。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM