2011-01-31 17 views
7

不思議なJavaScriptエラーがポップアップし続けるページがあります。彼らは私たちが使用するアプリケーションから来ているように見え、ソースを所有していません。私はこの問題に真の解決策を取り組んでいますが、明日のデモがあります。JSエラーをページ全体で抑制する方法があるかどうか疑問に思っていました(巨大なtry catchですべてのjavascriptコンポーネントをラップするなど)。ページ全体を動的にキャッチする方法はありますか?

+1

巨大なトライキャッチは何をしようとしていますか?それはあなたのコードが黙って失敗するでしょう、正しく動作しません。 –

+0

@Mattよく、デモ用に動作する場合は...詳細を見る[ここ](http://stackoverflow.com/questions/2822397/suppress-done-but-with-errors-on-page-in-ie )。巨大なtry/catchが選択の道具のようです –

+1

@Pekka:ええ、私_guess _...はやや弱いようです。 –

答えて

9

window.onerrorイベントにハンドラを追加できます。この場合、ウィンドウ内で発生するすべてのエラーは、このイベントのハンドラにリダイレクトされます。 (私はFirefoxでこれをテストしていましたが、うまくいきましたが、Chromeで問題が発生しました。私のChromeのインストールはかなりうんざりしているので、問題になるかもしれませんが、この問題に関するChromiumバグがあります:bug #7771bug #8939

window.onerror = function (msg, url, line) { 
    alert("Error on line " + line + " in " + url + ":\n" + msg); 
    // return true to prevent browser from displaying error 
    return true; 
} 
+0

Pekkaが上記のコメントに投稿したリンクを見ただけです...私はIEでこれをテストしませんでした(私はWindowsのコンピュータが横たわっていません)ので、そのブラウザで – jhartz

+4

*このコードは使用しないでください!* **コードを修正してください。**私はMicrosoft SharePointのこの種のひどいアイデアを扱うのに時間を浪費しました。 (答えは+1です) –

+0

これは最高です!この最後の修正をありがとうございました。それはデモが大いに役立つはずです! S. Firefox、chrome、IE8で動作します(他のバージョンはテストされていません) – Maxx

関連する問題