我正在尝试访问根元素的子节点,但我无法这样做,因为返回的元素都是“未定义” - 包括返回的数组。
<html>
<head>
<script>
function dothis()
{
var elements = document.getElementsByTagName("body").parentNode.childNodes;
alert(elements.length);
}
</script>
</head>
<body onload="dothis();">
<p>Welcome</p>
<ul>
<li>hello</li>
</ul>
</body>
</html>
答案 0 :(得分:1)
getElementsByTagName
返回NodeList
(根据规范。在某些浏览器中,例如Firefox,我认为它会返回HTMLCollection
)。在任何情况下,它返回的是一个类似数组的对象。您需要访问特定索引处的元素:
var elements = document.getElementsByTagName("body")[0].parentNode.childNodes;