Javascript 是否有跨浏览器的方法来设置第三方(跨域)异步Dom注入脚本的超时?

Javascript 是否有跨浏览器的方法来设置第三方(跨域)异步Dom注入脚本的超时?,javascript,unobtrusive-javascript,Javascript,Unobtrusive Javascript,我们的标签经理今天倒下了,导致我们的网站陷入困境。由于tag manager中的代码不是任务关键型的(分析等),是否有一种方法可以执行以下操作 var extScript=document.createElement('script'); extScript.type='text/javascript'; extScript.src=http://third-party.com/scriptfile.js'; var s=document.getElementsByTagName('script

我们的标签经理今天倒下了,导致我们的网站陷入困境。由于tag manager中的代码不是任务关键型的(分析等),是否有一种方法可以执行以下操作

var extScript=document.createElement('script');
extScript.type='text/javascript';
extScript.src=http://third-party.com/scriptfile.js';
var s=document.getElementsByTagName('script')[0];
s、 parentNode.insertBefore(extScript,s);
setTimeout(函数(){
//如果未加载脚本-“放弃”
}, 3000); // 3秒

如果它不是任务关键型的,那么在文档完全加载后,您可能希望将此脚本放在body标记的末尾

window.onload = function() {
  var extScript = document.createElement('script');
  extScript.type = 'text/javascript';
  extScript.src = 'http://third-party.com/scriptfile.js';

  document.body.appendChild(extScript);

}

添加
async
属性怎么样

<script async type = 'text/javascript' src = 'http://third-party.com/scriptfile.js' ></script>


这不会阻止,但是您可能会遇到一些问题()

您可以在几秒钟后插入脚本,让其他所有内容都有时间先加载吗?是的,当然可以设置超时,然后“放弃”。但是,如果放弃,你想做什么呢?我想他正在寻找一种方法来中止脚本,以便浏览器停止“旋转”。因此,我也在寻找一种方法来实现这一点,但还没有想出多少。