Javascript:处理GET错误(document.createElement)

wer*_*her 4 javascript error-handling google-chrome createelement

我正试图在我的文档中"包含"一个JS文件.它工作正常,但是当文件脱机时,它应该将变量设置为FALSE.我用谷歌搜索,但我没有得到它.所以我尝试使用try/catch:

    try {
      var jq = document.createElement('script');
      //jq.onload = put;
      jq.type = 'text/javascript';
      jq.src = 'http://127.0.0.1:9666/jdcheck.js';
      document.getElementsByTagName('head')[0].appendChild(jq);
    }
    catch(e) {
    console.log('An error has occurred: '+e.message);
        jdownloader = false;

    }
Run Code Online (Sandbox Code Playgroud)

它只是抛出了我的错误

  Failed to load resource http://127.0.0.1:9666/jdcheck.js
Run Code Online (Sandbox Code Playgroud)

如何将var设置为FALSE?

谢谢Markus

ade*_*neo 7

你有点做错了.在检查是否可以加载脚本源时,有内置onloadonerror事件,因此您不需要try/catch块,因为这些是脚本执行错误,而不是"404 file not found"错误,以及404部分不会执行catch部分:

var jq = document.createElement('script');
jq.onload = function() {
    // script loaded successfully
}

jq.onerror = function() {
    // script error
}

jq.type = 'text/javascript';
jq.src = 'http://127.0.0.1:9666/jdcheck.js';
document.getElementsByTagName('head')[0].appendChild(jq);
Run Code Online (Sandbox Code Playgroud)