<body>
<ul>
    <li id="li_1">You</li>
    <li>He</li>
    <li>I</li>
</ul>
<ul>
    <li>Che</li>
    <li>Chee</li>
    <li>Cheee</li>
    <li>Che</li>
    <li>Chee</li>
    <li>Cheee</li>
</ul><script type="text/javascript" src="file:///D:/yuan_work_1st/jslib/st2.js"></script>
</body>var ul_child = document.getElementsByTagName("ul")[0];//第一个ul
var len = ul_child.childNodes.length;                   //不是ul下的li数目吗? 4 ? 7 ?
document.write("<br /> the first ul lenth: " + len);
for(var i =0;i<len;i++){
    document.write("<br />" + 
    ul_child.document.getElementsByTagName("li")[i].firstChild.nodeValue);//IE\FireFox\Opera下各不同

在IE下最正常了,在Opera下不知为何长度是7,Firefox下竟然还有错误,长度也是7。
请大家拿代码试一,并解释下,先谢了。

解决方案 »

  1.   

    非ie上回车会解析 成空文本节点全部使用getelementsbytagname吧
      

  2.   

    childNodes Collection 
    Retrieves a collection of HTML Elements and TextNode objects that are direct descendants of the specified object.会返回 HTML 元素 和 文本元素滴!lz 还是老老实实一层一层找吧!
      

  3.   

    Web 开发常用手册JScript语言参考.rar
    http://download.csdn.net/source/308916DHTML参考手册.rar
    http://download.csdn.net/source/308913样式表中文手册.chm
    http://download.csdn.net/source/304124
      

  4.   

    var ul_child = document.getElementsByTagName("ul")[0];//第一个ul
    var len = ul_child.getElementsByTagName("li").legnth;