脚本标签的动态创建和 src 加载在 ie10 中不起作用

Dynamic creation of script tag and src load of it is not working in ie10

本文关键字:加载 ie10 不起作用 src 标签 动态 创建 脚本      更新时间:2023-09-26

我只是尝试加载静态js文件,如下所示

function getKey(){ 
var headID = document.getElementsByTagName("head")[0]; 
var scriptEmt =document.createElement('script'); 
scriptEmt.type='text/javascript'; 
scriptEmt.src="https://preview16.abc.com/Svc/js/test.js";
headID.appendChild(scriptEmt);  
calltest();
}       

当我签入网络捕获 - 测试.js已成功加载时。我可以在 URL https://preview16.abc.com/Svc/js/test.js 的响应正文中看到 js 文件及其内容。我的测试.js文件内容如下所示:

function calltest(){
alert("I am in test");
}

但是当我在 headID.appendChild(scriptEmt) 之后的 getKey() 中调用 calltest() 时;语句它说错误 - SCRIPT5009:"calltest"未定义

这仅在 IE10 中发生。在 IE 9 中。calltest() 函数被成功调用,其中的警报出现。

尝试

var fileTag = "<script src='https://preview16.arcot.com/Svc/js/test.js' type='text/javascript' ><'/script>";
document.write(fileTag);

也试试

var script = document.createElement('script');        
script.onreadystatechange = function() {
  if (script.readyState == 'loaded') {
       document.body.appendChild(script);
       calltest();
  }
};
script.src = 'yourscript.js';