我的网络应用加载外部JS文件,有时会挂起30秒以上,让我的页面依次挂起。
我知道我可以将其从head
中删除,或从我自己的服务器加载文件,或切换服务。但是,我想知道是否有办法停止加载外部文件,如果它们在一段时间内没有响应。
答案 0 :(得分:1)
如果您在文件之间存在依赖关系,那么异步加载JavaScript文件可能会非常棘手。我希望将<script>
- 标记放在<body>
的底部。通过这种方式,您可以将依赖项置于其下,并且在执行依赖于慢速JS文件的函数之前,您只能在慢速JS文件中检查变量。您还写道,您可以将JS放在您自己的服务器上,所以我猜它在外部域上。如果是这种情况,您无法使用普通的XMLHttpRequest / AJAX调用来异步加载JS文件。
如果您绝对想要异步加载文件并准备好处理可能给您的问题,请查看http://headjs.com/。
答案 1 :(得分:0)
我认为不可能以常规方式链接外部文件,并为其加载指定自定义超时。
您可以尝试向文件地址发出ajax请求,同时设置超时30秒。如果请求仍然在运行,您可以取消它。否则,在html页面中,您可以创建带有加载内容的脚本标记。