头部的Javascript不起作用

头部的Javascript不起作用,javascript,html,Javascript,Html,鉴于此html代码,我们是不允许编辑的 <!doctype html> <html manifest="survey.manifest"> <head> <title>Offline Survey Application</title> <link rel="stylesheet" href="styles/survey.css" type="text/css"> <script type="t

鉴于此html代码,我们是不允许编辑的

<!doctype html>
<html manifest="survey.manifest">
<head>
    <title>Offline Survey Application</title>
    <link rel="stylesheet" href="styles/survey.css" type="text/css">
    <script type="text/javascript" src="scripts/survey.js"></script>
</head>
<body>
   <!--should be empty --->
</body>
</html>

<!-- YOU ARE NOT ALLOWED TO EDIT THIS FILE!!! -->

离线调查应用程序
我似乎无法让javascript正常工作。但是如果我把script元素放在主体上,整个脚本就会显示出来。问题是我们不允许这样做。有没有其他办法让它发挥作用


编辑:我知道脚本在加载其他元素之前运行。我无法将其移动到其他位置,因为该文件可能已被修改://

您的脚本可能正在尝试修改DOM并尝试访问body元素

在最初加载并运行脚本时,主体不存在


将代码移动到函数,并将该代码绑定为加载事件处理程序。(
addEventListener('load',someFunction);
)。

这可能是因为脚本仅在页面完成加载时工作,但通过将代码放在
标题中,您首先加载脚本。要解决此问题,您可以尝试用以下代码替换当前脚本代码:

<script type="text/javascript" src="scripts/survey.js" defer></script>


这确保代码仅在页面加载完成后加载。

请参阅。还有。survey.js文件中有什么?定义“不工作”。会发生什么?找到
.js
文件了吗?代码是否执行?JavaScript控制台上是否有错误?这是***调查文件之一吗?:)如果您查看我发布的链接,您将找到在加载DOM并将其放在头部时如何运行代码的解决方案。