此问题已经在这里有了答案:
我正在尝试运行程序,但是当我将javascript getElementById方法放在标头部分中时,则代码不会执行,但是当我将其放在html下方的主体节中时,它将被执行。请告诉我原因
<html>
<head>
<script type="text/javascript">
document.getElementById("addition").innerHTML= 5+6;
</script>
</head>
<body>
<span id="demo"> 5+6 =</span><span id="addition"></span>
当您在标头中添加Javascript代码时,它会在正文之前运行。因此,在那一刻,还没有ID为“ addition”的元素。
为简单起见,应将脚本添加到标签的底部。
<html>
<head>
<title>Hello World</title>
</head>
<body>
<span id="demo"> 5+6 =</span><span id="addition"></span>
<script type="text/javascript">
document.getElementById("addition").innerHTML= 5+6;
</script>
</body></html>
另一个选择是将代码放入函数中,然后将该函数调用到body标记的onLoad属性中。
<html>
<head>
<title>Hello World</title>
<script type="text/javascript">
function letsDoIt(){
document.getElementById("addition").innerHTML= 5+6;
}
</script>
</head>
<body onload="letsDoIt()">
<span id="demo"> 5+6 =</span><span id="addition"></span>
</body></html>
有关事件顺序的更多信息,请点击https://javascript.info/onload-ondomcontentloaded。