0

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

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

4

1 回答 1

1

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

var elements = document.getElementsByTagName("body")[0].parentNode.childNodes;
于 2012-05-04T12:52:44.297 回答