首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在运行时在JavaScript中插入IE8

在运行时在JavaScript中插入IE8
EN

Stack Overflow用户
提问于 2012-08-07 17:57:24
回答 1查看 782关注 0票数 1

我使用脚本从库(一个大文件)加载脚本,它的工作方式如下:

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

没什么很复杂的。但IE8只是没有做好这份工作!它不允许通过任何方法在script元素标记中插入脚本!所以我尝试另一种方法:

代码语言:javascript
运行
复制
<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来解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2012-08-07 18:07:28

ajax不触发onload事件:

代码语言:javascript
运行
复制
window.onload = teste;

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

代码语言:javascript
运行
复制
teste();
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11851484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档