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

输出 id="lesson4" 的内容 HTML/CSS,失败!

<!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.firstChild.nodeValue);
        </script>
    </body>
</html>

提问者:Just90 2016-02-26 17:15

个回答

  • 不羁_的风
    2016-02-26 23:10:40
    已采纳

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

    是上面这个样子的,因为lastchild等知识获取节点而不是获取文本信息,如果你把你自己写的输出内容的“.nodeValue”删除掉,就会输出null,你的script标签里好像有的可能是在中文下输入的

  • 丨丨丨丨丨
    2016-03-02 15:30:28

    试了一下,你这个是因为最后一个ul闭合标签前边有个空白节点,前几篇课程里边有,你的代码 在IE下是没问题的

  • W19951223L
    2016-02-27 00:49:06

    我个人觉得应该这样输出:

    document.write(mylist.parentNode.parentNode.parentNode.lastchild.nodeValue);

    document.write(mylist.parentNode.parentNode.parentNode.firstchild.nodeValue);