Javascript 检查url是否返回404

Javascript 检查url是否返回404,javascript,Javascript,我试图检查URL在包含Javascript文件时是否返回404403等。它工作正常,但我仍然在“Chrome开发者工具”中遇到一个错误 这是我的代码: (function() { try { var ml = document.createElement('script'); ml.type = 'text/javascript'; ml.async = true; ml.id = 'monoloop_in

我试图检查URL在包含Javascript文件时是否返回404403等。它工作正常,但我仍然在“Chrome开发者工具”中遇到一个错误

这是我的代码:

(function() { 
try
  {
            var ml = document.createElement('script'); 
        ml.type = 'text/javascript';    
        ml.async = true; 
        ml.id = 'monoloop_invoke'; 
        ml.onerror = function(){alert('File does not exist');};
        ml.src = 'http://somedomain.com/somefile.js';
            var s = document.getElementsByTagName('script')[0];
            s.parentNode.insertBefore(ml, s);

  }
catch(err)
  {
    alert('Error: '+err);
  }
        })
    ();     
如果文件不存在,则显示
ml.onerror
函数中的错误“文件不存在”。这一切都很好。但问题是,我的控制台中仍然会出现如下错误行:

GET http://somedomain.com/somefile.js 403 (Forbidden)
而try/catch无法捕获此错误

有人知道怎么解决这个问题吗?或者在包含URL之前是否有其他方法测试URL是否存在?我不能使用AJAX,因为我需要以跨域的方式使用它。如果需要,我可以使用jQuery

编辑:它没有显示IE中的错误,所以我猜这可能只是与chrome报告问题的方式有关。有没有人看到一个更优雅的解决方案,可以在控制台中检查文件是否存在而不生成任何内容

jQuery.getScript( url, [ success(data, textStatus) ] ) 
描述:使用GET HTTP请求从服务器加载JavaScript文件,然后执行它

网址 包含请求发送到的URL的字符串

成功(数据、文本状态) 在请求成功时执行的回调函数

要捕获错误,请使用ajaxError事件:


是您提出的请求,所以Chrome当然会向您显示它返回了403。我认为这不会产生错误。您不能使用Ajax调用该页面,获取内容并解释它吗?使用引用无效URL的
src
属性向DOM插入
script
标记。。。现在抛出异常?@Jeremy-我知道如果我在网络中查看,它将在网络中显示此信息,但我需要它在控制台(错误控制台)中不显示@sunebrodersen:浏览器中的传输错误和Javascript异常完全无关。这种方法行不通。问题是:“我不能使用AJAX,因为我需要以跨域的方式使用它。”当然,这一要求可能会使整个游戏变得不可能。。。但是,这似乎在所有浏览器中都能正常工作,而且是跨域的,但它仍然会在chrome控制台中生成“GET 403(禁止)”,但这可能是不可能改变的