这是我在Javascript detect static <script> load failues试图问的问题,但我想我可能会困惑这个问题。<script>标签检测网络错误
我的问题是:假设我在某些HTML中有一个<script>
标记,它不会加载,不是因为代码中的任何错误,而是因为网络错误。有没有办法通过编程的方式通知这个网络错误?我发现我可以将一个onerror
事件附加到脚本标记上,但回调函数只能传递给它的对象Event
,并且没有关于网络故障的信息。相比之下,如果我通过Ajax动态加载脚本,我有一个XHR对象,它有一些我可以在其中使用的信息。我正在寻找与静态<script>
标签相媲美的东西。
基本上我想是这样的
<script src="/path/to/script.js" type="text/javascript" onerror="handleError(event)"></script>
<script type='text/javascript'>
function handleError(event) {
// do stuff;
}
</script>
其中“东西”将包括加载阻止脚本的网络错误的详细信息。
我明白我可以做到这一点。我在说我想明确知道是什么导致它无法加载 - 是网关超时,中止请求还是别的什么。 – Dan
无法测试嵌入式资源上的400/500错误我不相信,ajax会响应标准响应类型,所以ajax可以提供相关信息,但不会嵌入.js文件。 – Wobbles
谢谢。我担心情况可能如此,但无法证实。 – Dan