次のように JS ファイルをインポートする HTML ページがあります。
<script src="file.js" type="text/javascript" charset="utf-8"></script>
しかし、このファイルがスクリプトの実行に失敗した場合、ページ全体が明らかに動かなくなります。
そのファイルを try-catch ブロック内にインポートできますか?
次のように JS ファイルをインポートする HTML ページがあります。
<script src="file.js" type="text/javascript" charset="utf-8"></script>
しかし、このファイルがスクリプトの実行に失敗した場合、ページ全体が明らかに動かなくなります。
そのファイルを try-catch ブロック内にインポートできますか?
エラーをリッスンできます(これを参照)
// make a script
var s = document.createElement('script');
// set it up
s.setAttribute('src',"file.js");
s.setAttribute('type',"text/javascript");
s.setAttribute('charset',"utf-8");
s.addEventListener('error', errorfunction, false);
// add to DOM
document.head.appendChild(s);
次に、でerrorfunction
、何が起こったのかを調べて、catch
AJAXを使用できます。これはjQueryを持っていることを前提としていますが、簡単に使用を避けることができます (多くのチュートリアルの 1 つをここで見つけることができます)。次に例を示します。
$.get("http://yoursite.com/file.js", function(data) {
try {
eval(data); //Run the JavaScript, which is equivalent to adding it
}
catch (err) {
//handle errors
}
});
それが何らかの形で役立つことを願っています!