猿问
下载APP

为何将innerHTML属性写在head中没有输出,求解

<!DOCTYPE>
<html>
<head>
<script>
  document.getElementById("h01").innerHTML="Hello World!";
</script>

</head>

<body>
<h1 id="h01"></h1>

</body>
</html>

Kerry_Xu
浏览 5295回答 7
7回答

ruibin

js是单线程的,代码从上到下依次执行。意思就是,先执行head然后执行body。执行head的时候还不知道body里面有什么。所以document.getElementById("h01")获取到的undefined,当然也没有innerHTML属性了。你可以把这段代码放到h1后面就行了。

小世界里的白日梦

<!DOCTYPE><html><head></head><body><h1 id="h01"></h1><script>  document.getElementById("h01").innerHTML="Hello World!";</script></body></html>

止醉seven

js是单线程,浏览器是从上往下读取代码,你写在head 中,浏览器还没有读取到body标签就执行了这个代码,这时候浏览器没发现h1标签所有肯定报错

qq_歲月靜好不忘初心_0

<script>function change(){  document.getElementById("h01").innerHTML="Hello World!";}window.onload=change();</script>,或者,<script type="text/javascript">docunment.getElementById("h01").innerHTML="Hello World";</script>,将这整段段代码放到H1标签之后的任何部位.

倾夏秋冬

自己写的js一般放在body结束标签之前

920808xxm

docunment.getElenmentById("#h01").innnerHTML,括号里面是("#h01")
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
继续