我想在彈出的警報中顯示腳本錯誤,而不是在瀏覽器控制檯中顯示腳本錯誤。javascript:如何在彈出警報中顯示腳本錯誤?
window.onerror = function() {
var message = /* get error messages and put them here */;
alert(message);
return true;
};
我想在彈出的警報中顯示腳本錯誤,而不是在瀏覽器控制檯中顯示腳本錯誤。javascript:如何在彈出警報中顯示腳本錯誤?
window.onerror = function() {
var message = /* get error messages and put them here */;
alert(message);
return true;
};
是的,這是正確的方法。
看到這裏引用:
http://www.javascriptkit.com/javatutors/error2.shtml
和解釋如何看到錯誤這裏的更多細節:
http://www.javascriptkit.com/javatutors/error3.shtml
他們的榜樣:
window.onerror = function(msg, url, linenumber) {
alert('Error message: '+msg+'\nURL: '+url+'\nLine Number: '+linenumber);
return true;
}
如果你願意o在單個彈出窗口中顯示錯誤列表,這很棘手。
由於錯誤1 occue 1,你需要做到以下幾點:
window.onerror
處理程序商店錯誤的詳細信息在一些陣列檢查陣列定期 - 無論是通過一個定時器,或window.onerror
處理程序的每個第N次呼叫,或兩者。
當檢查情況發生時,過程整個陣列,顯示爲期望的內容,並空出的陣列
Thx!所以答案是: window.onerror = function(message){ alert(message); 返回true; }; 經過測試! – powerboy 2010-04-09 04:02:25
檢查了這一點:http://www.javascriptkit.com/javatutors/error3.shtml。看起來像簽名是function(message, url, linenumber)
。
以防萬一有人想用jQuery使用它:
$(window).on("error", function(evt) {
console.log("jQuery error event:", evt);
var e = evt.originalEvent; // get the javascript event
console.log("original event:", e);
if (e.message) {
alert("Error:\n\t" + e.message + "\nLine:\n\t" + e.lineno + "\nFile:\n\t" + e.filename);
} else {
alert("Error:\n\t" + e.type + "\nElement:\n\t" + (e.srcElement || e.target));
}
});
試一試jquery ui對話框> https://jqueryui.com/dialog/ – KingRider 2015-08-25 14:36:32
<script>$(window).on("error", function(evt) {
console.log("jQuery error event:", evt);
var e = evt.originalEvent; // get the javascript event
console.log("original event:", e);
if (e.message) {
alert("Error:\n\t" + e.message + "\nLine:\n\t" + e.lineno + "\nFile:\n\t" + e.filename);
} else {
alert("Error:\n\t" + e.type + "\nElement:\n\t" + (e.srcElement || e.target));
}
});
</script>
注意'onerror'事件只被IE和Mozilla的支持。 – CMS 2010-04-09 04:01:47
那麼是否有跨瀏覽器解決方案?我的意思是,由webkit – powerboy 2010-04-09 04:05:42
支持的類似功能你的意思是除IE和Mozilla之外還有其他瀏覽器?黨!我需要更多:) – DVK 2010-04-09 04:10:17