首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在运行时包含JavaScript在IE8中不起作用

在运行时包含JavaScript在IE8中不起作用
EN

Stack Overflow用户
提问于 2010-11-26 00:19:16
回答 4查看 851关注 0票数 1

下面这段代码可以在IE6 & IE7和几乎所有版本的FF中运行。这在IE8中是行不通的。一旦我将脚本标记添加到HTML->HEAD元素中,我就看不到该脚本被加载到浏览器中(脚本中的警报不会显示)。我看到标签已经被插入到HTML-HEAD中了。

代码语言:javascript
复制
var head = document getElementsByTagName('head')[0];
// Check if the script is already loaded.
if (head ){
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.language = 'JavaScript';
    script.src = '/Tolven/scripts/' + jsFileName;
    head.appendChild(script);       
}

有没有人有这个问题?有什么线索可以解决这个问题吗?

EN

回答 4

Stack Overflow用户

发布于 2010-11-26 00:51:25

如果此脚本在<head>标记中,则在解析和执行此脚本时,head不存在。所以,当然if (head)false

您正在使用JS框架--所以请随意使用它的工具。在使用你的框架之前,也别忘了把它包括进来。

代码语言:javascript
复制
<!-- if your are using mootools -->
<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript">
  window.addEvent('domready', function() {
    // Your code...
  });
</script>

<!-- if your are using prototype -->
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
  document.observe("dom:loaded", function() {
    // Your code...
  });
</script>
票数 1
EN

Stack Overflow用户

发布于 2010-11-26 02:49:53

考虑使用像RequireJSLABjs这样的库,它们可以很好地在运行时包含脚本。

票数 1
EN

Stack Overflow用户

发布于 2010-11-26 02:40:55

代码语言:javascript
复制
var head = document getElementsByTagName('head')[0];

应该是

代码语言:javascript
复制
var head = document.getElementsByTagName('head')[0];

在此修改后,脚本似乎可以工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4279018

复制
相关文章

相似问题

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