<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>dom_demo.html</title>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

    </head>

    <body>
        <!--
        通过节点的层次关系获取节点对象。
        
        关系:
        1,父节点: parentNode:对应一个节点对象。
        2,子节点:childNodes:对应一个节点集合。
        3,兄弟节点:
            上一个兄弟节点:previousSibling
            下一个兄弟节点:nextSibling
        -->
        <script type="text/javascript">
            
            function getNodeByLevel(){
                //获取表格节点
                var tabNode=document.getElementById("tabid");
                
                //获取父节点
                //var parentNode=tabNode.parentNode;
                //alert(parentNode.nodeName);//BODY
                
                //获取子节点
                //var childNodes=tabNode.childNodes;
                //alert(childNodes[0].nodeName);//TBODY
                //alert(childNodes[0].childNodes[0].nodeName);//TR
                
                //获取兄弟节点
                //var brotherNode=tabNode.previousSibling;
                //var brotherNode=tabNode.nextSibling;
                //alert(brotherNode.nodeName);//#text
                //为什么是#text而不是SPAN呢?因为在</span>和<table>中间有回车换行。
                
                
                //注意:尽量少用兄弟节点,因为在解析的时候会出现浏览器不同解析不一致,会解析出标签间的空白文本节点
            }
            
        </script>
        
        
        
        <input type="button" value="通过节点层次关系获取节点" onclick="getNodeByLevel()"/>
        <div>div区域</div>
        <span>span区域</span>
        <table id="tabid">
            <tr>
                <td>单元格一</td>
                <td>单元格二</td>
            </tr>
        </table>
        <span>span区域11</span>
        <dl>
            <dt>上层项目</dt>
            <dd>下层项目</dd>
        </dl>
        <a href=''>一个超链接</a>
    </body>
</html>