如何访问根元素的子节点?

时间:2012-05-04 12:49:26

标签: javascript dom

我正在尝试访问根元素的子节点,但我无法这样做,因为返回的元素都是“未定义” - 包括返回的数组。

<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>​

http://jsfiddle.net/PrPPM/1/

1 个答案:

答案 0 :(得分:1)

getElementsByTagName返回NodeList(根据规范。在某些浏览器中,例如Firefox,我认为它会返回HTMLCollection)。在任何情况下,它返回的是一个类似数组的对象。您需要访问特定索引处的元素:

var elements = document.getElementsByTagName("body")[0].parentNode.childNodes;