gpt4 book ai didi

如果前面没有 document.write,则 javascript document.body 未定义

转载 作者:行者123 更新时间:2023-11-28 11:16:36 33 4
gpt4 key购买 nike

使用这个最小的网页:

<html>
<head>
<title>test</title>
<script type='text/javascript' src='test.js'></script>
</head>
<body>
</body>
</html>

这个最小的“test.js”脚本失败:

document.body.innerText = 'testje';

document.body 似乎未定义:

0x800a138f - JavaScript runtime error: Unable to set property 'innerText' 
of undefined or null reference

如果在代码行之前添加一个 document.write('blabla') ,它就会起作用:

document.write('blabla');
document.body.innerText = 'testje';

这让我很困惑,尽管它看起来相当基本。

我是 Javascript 新手,因此非常欢迎一些解释。

最佳答案

脚本运行时没有body标签,还没有输出到DOM。

<html>
<head>
<title>test</title>
</head>
<body>
<!-- Place content here -->
<script type='text/javascript' src='test.js'></script>
</body>
</html>

当使用document.write时,文档会与新内容同步更新,浏览器会修复您的错误并添加一个body元素,这就是为什么它在document.write<之后可用.

关于如果前面没有 document.write,则 javascript document.body 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20665509/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com