1

我正在使用脚本从库(一个大文件)中加载脚本,它的工作原理如下:

  1. 通过 xmlhttprequest 加载脚本
  2. 创建一个新的脚本标签元素,其中包含脚本(新文本节点、innerText 或 innerHTML)
  3. 在头部追加新元素

没有什么很复杂的。但是 IE8 只是没有完成这项工作!它不允许通过任何方法将脚本插入脚本元素标签中!所以我尝试了另一种方法:

<script type="text/javascript" language="javascript">
function teste(){
    var elemScript = document.createElement('script');
    elemScript.type = 'text/javascript';
    elemScript.language = 'javascript';
    elemScript.src = 'http://somewhere/somecode.js';
    var headTag = document.getElementsByTagName('head')[0];
    headTag.appendChild(elemScript);
}
window.onload = teste;
</script>

IE8 什么也没说。我不知道它是否正在加载,但我确定没有执行代码(测试警报)。我知道 jQuery 和其他库可以做到这一点,并且可以使其在所有浏览器中工作(IE8+ 对我来说很好)。他们是如何做到这一点的?有没有一种简单的方法可以用纯 JavaScript 解决这个问题?

4

1 回答 1

-1

ajax 不会触发 onload 事件:

window.onload = teste;

因此,只需将其更改为调用该方法:

teste();
于 2012-08-07T18:07:28.537 回答