问答详情
源自:9-10 访问父节点parentNode

关于父节点parentNode

<script  type="text/javascript">    
   var mylist = document.getElementById("tcon"); 
   document.write(mylist.parentNode.parentNode.parentNode.lastChild.innerHTML);
</script>

代码有毛病吗,为啥运行结果是那个样

http://img.mukewang.com/59a53e470001785309250437.jpg

代码有毛病吗老铁们

提问者:可乐要加冰Xx 2017-08-29 18:14

个回答

  • 爱上慕婉清6262634
    2017-09-26 15:57:56


    1,你的那个<script  type="text/javascript">   上面最近的那个</li></ul>是换过行的,那里会存在一个节点,这个节点是你的js代码中指向的最后一个节点

    2,  document.write(mylist.parentNode.parentNode.parentNode.lastChild.innerHTML);

          第一条存在的那个节点是空白节点,所以返回一个undefined


  • 慕粉3531781
    2017-09-12 17:39:00

    你是不是在哪里换行了什么的   最好重置一下代码然后再按要求把document.write语句写上去


  • 可乐要加冰Xx
    2017-09-11 20:10:09

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>无标题文档</title>
    </head>
    <body>
    <ul id="con">
        <li id="lesson1">javascript
          <ul> 
              <li id="tcon"> 基础语法</li>
              <li>流程控制语句</li>
              <li>函数</li>
              <li>事件</li>
              <li>DOM</li>
          </ul>
        </li>
        <li id="lesson2">das</li>
        <li id="lesson3">dadf</li>
        <li id="lesson4">HTML/CSS 
          <ul>
            <li>文字</li>
            <li>段落</li>
            <li>表单</li>
            <li>表格</li>  
          </ul> 
        </li>
    </ul>  
    <script  type="text/javascript">    
       var mylist = document.getElementById("tcon"); 
       document.write(mylist.parentNode.parentNode.parentNode.lastChild.innerHTML);
    </script> 
    </body>
    </html>

    这是代码

  • 我要SSR
    2017-09-11 16:13:14

    JS没毛病老铁。。。你看看是否你的HTML有问题

  • 我要SSR
    2017-08-30 14:10:13

    不贴出html代码谁知道你的结构啊

  • 慕盖茨9754587
    2017-08-30 13:14:15

    你得把html贴出来啊老铁