问答详情
源自:9-9 访问子节点的第一和最后项

用chiliNodes最后一行不能输出

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>无标题文档</title>

</head>

<body>

<div id="con">

  <p>javascript</p>

  <div>jQuery</div>

  <h5>PHP</h5>

</div>

<script type="text/javascript">

  var x=document.getElementById("con");

 document.write("div的第一个子节点是:"+x.firstChild.nodeType+"<br>");

 document.write("div的最后一个子节点是:"+x.lastChild.nodeType+"<br>");

 document.write("div的最后一个子节点是:"+x.childNodes[x.length-1].nodeType);

</script>

</body>

</html>

无法输出,浏览器编译显示nodeType未定义

提问者:weixin_慕圣4359847 2019-09-23 17:15

个回答

  • 慕工程4157871
    2020-04-28 15:05:00

    不应该是x.length 而是 x.childNodes.length

  • sdarks
    2019-09-24 15:54:43

    x.childNodes[x.length-1].nodeType这里的x.length-1是错误的,因为这里x是元素节点,你直接在后面添加length属性所得到的是undefined,所以才不能输出。

    正确的是:

    document.write("div的最后一个子节点是:"+x.childNodes[x.childNodes.length-1].nodeType);