【发布时间】:2012-01-26 19:05:36
【问题描述】:
以下是我整理的一个小网页的片段。
<script type="text/javascript" src="head.js">
</script>
<title>CPST 3410-85 Class Template</title>
</head>
<body onload="outputToDiv();">
脚本标签中引用的head.js文件如下:
function outputToDiv() {
alert("JavaScript is working!");
}
在 Chrome 和 Firefox 中,会显示警报,指示 JavaScript 正在运行。在 IE9 中它不是。此外,无论内容如何,我都无法在 IE9 中运行任何外部脚本。我使用了自定义安全设置,并以精细的方式将每个安全设置降低到最低级别,然后进入高级设置并启用我能找到的所有内容。
请注意,我是从本地文件夹中打开它的。所有文件都在同一个文件夹中,我再次强调这适用于 firefox 和 chrome。
在 IE9 中我启用了调试,但出现以下错误:
网页错误详情
Message: Invalid character
Line: 1
Char: 1
Code: 0
URI: file:///E:/My%20Documents/My%20Web%20Sites/CPST341085/head.js
当然它会告诉我“outputToDiv()”是未定义的。
我在这里完全不知所措。
【问题讨论】:
-
我注意到的第一件事是脚本标签不需要单独的结束标签。如果删除以下行会发生什么:
-
@SteveRobillard:嗯,是的,
<script>确实需要单独的结束标记。 -
@SteveRobillard 旧版本的 IE 需要一个结束脚本标记。
-
在内置调试器中查看JS文件中的内容。这是你所期望的吗?您还应该运行本地服务器而不是使用文件协议。
-
您可以将该文件上传到服务器并从那里请求它吗?也许您的编辑添加了 BOM 或其他内容
标签: javascript html internet-explorer internet-explorer-9