J'ai une classe d'exception personnalisée que j'utilise pour une situation particulière. Il pourrait être jeté de n'importe où alors essayer/attraper n'est pas vraiment pratique.Attraper une exception javascript personnalisée avec window.onerror - dans IE
throw new CustomException;
Je veux attraper cette erreur dans window.onerror et filtrer dehors, qui fonctionne très bien dans la plupart des navigateurs, je l'ai testé jusqu'à présent.
var window_onerror = window.onerror || function() {return false;};
window.onerror = function(message, url, line) {
if (message.match(CustomException.prototype.name)) {
return true;
} else {
return window_onerror(message, url, line);
}
};
Cependant, dans IE la fonction window.onerror reçoit Exception thrown and not caught
au lieu de mon exception personnalisée.
Je vous concède que cela fonctionne dans IE, (ce que j'ai demandé) mais Firefox ne rapporte que "Script Error" avec cette technique. –
@Justin: fonctionne bien pour moi - pouvons-nous voir du code? – Christoph
http://bitbucket.org/JustinLove/module/src/4f80d66afb94/ Voir script/CGD/Module.js testé dans QUnit/index.html Throw est en ligne 126, avec la définition d'exception et gestionnaire à partir du –