huanxuan163 2016-07-23 08:31 采纳率: 50%
浏览 1116
已采纳

请问下 JS获取子节点的问题 求大神们给我解释下

window.onload = function() {
    var addressNode=document.getElementById("address");
    var liNode=addressNode.firstChild;
    alert(liNode.nodeValue);//这里我得不到数据
    alert(addressNode.childNodes.length);//这里结果是7
    alert(addressNode.firstChild);//这里是[object Text],为什么不是[HTML element]?
    alert(addressNode.lastChild);//这里是[object Text]
}


  <p>地点</p>
    <ul id="address">
       <li id="dd" name="a5" onclick="alert('北京');">北京</li>
       <li>上海</li>
       <li>厦门</li>
    </ul>

我浏览器用IE(WIN10的) 和猎豹 都一样的结果

  • 写回答

2条回答 默认 最新

  • 斯洛文尼亚旅游 2016-07-23 10:20
    关注

    不要用firstChild,childNodes这种属性,要不空白节点标准浏览器下也算一个节点,firstChild明显是空白节点了,要去掉回车

        <ul id="address"><li id="dd" name="a5" onclick="alert('北京');">北京</li><li>上海</li><li>厦门</li></ul>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?