onerror語法使用
onerror 默認有三個入參:
•msg: 錯誤信息
•url:錯誤所在文件
•line: 錯誤所在代碼行,整型
window.onerror = function(msg, url, line){ // some code };
對于 <body onerror=”some code”>形式的,可以通過arguments[0]、arguments[1]、arguments[2]依次獲取參數。
js中我們最常用的就是js容錯
window.onerror=function(){return true;}
基本特性
可以通過設置returnValue=true,或直接return true來阻止瀏覽器顯示錯誤信息。但不會阻止script debuggers彈出的調試框。
只有運行錯誤才會觸發onerror,語法錯誤不會觸發。
以下三種方式可以引發onerror:
•運行時錯誤,例如無效的對象引用或安全限制
•下載錯誤,如圖片
•在IE9中,獲取多媒體數據失敗也會引發
<script> 標簽不支持onerror。
定義在 <body> 標簽上的onerror屬性相當于window.onerror (經測試,Firefox、Opera支持,IE9、chrome無反應)。
瀏覽器兼容性
QuirksMode列出的各瀏覽器對onError的支持情況
•Chrome 13+
•Firefox 6.1+
•Internet Explorer 5.5+
•Safari 5.1+
•Opera 11.61+ (QuirksMode 測試到11.51尚不支持,我手頭上的11.61已支持)
除window對象外,支持 onerror 的元素:
•<img> 全支持
•<script> IE9/IE10/safari 5.1+/chrome 13+ 支持
<css> 和 <iframe> 不支持onerror。
問題與解決方案



















