gpt4 book ai didi

javascript - documentElement 的 childNodes 返回一个 null

转载 作者:行者123 更新时间:2023-11-30 13:09:26 26 4
gpt4 key购买 nike

我正在执行一些简单的 JS 遍历测试,我想知道为什么我的 documentElement 包含一个空对象?

<html>
<head>
<title>My document</title>
</head>
<body>
<h1>Some header</h1>
<p id="pID">Some paragraph</p>
<p name="pNAME">Another paragraph/p>
</body>
</html>
<script type="text/javascript">
var rootElement = document.documentElement;
var childNodes = rootElement.childNodes;

for (var i = 0; i < childNodes.length; i++) {
document.write(childNodes[i].localName);
document.write("<br>");
}
</script>

它返回head, null, body。但是为什么rootElement中有3个childNode呢?

最佳答案

如果您只列出对象而不是它们的 localName,您将看到:

[object HTMLHeadElement]
[object Text]
[object HTMLBodyElement]

因此,对于文本节点的 localName,您会收到 null。要解决此问题,您需要 children 而不是 childNodes:

<script type="text/javascript">
var rootElement = document.documentElement;
var childNodes = rootElement.children;

for (var i = 0; i < childNodes.length; i++) {
document.write(childNodes[i]);
document.write("<br>");
}
</script>

这是JSFiddle中的演示.

关于javascript - documentElement 的 childNodes 返回一个 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14438970/

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