JavaScript12行代码获取相关节点

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<div id="dv">
    <span>这是div中的第一个span标签</span>

    <p>这是div中的第二个元素,第一个p标签</p>
    <ul id="uu">
        <li>乔峰</li>
        <li>鹿茸</li>
        <li id="three">段誉</li>
        <li>卡卡西</li>
        <li>雏田</li>
    </ul>
</div>
<script src="common.js"></script>
<script>
    //12行代码,都是获取节点和元素的
    //ul
    var ulObj = document.getElementById("uu");
    //父级节点
    console.log(ulObj.parentNode);
    //父级元素
    console.log(ulObj.parentElement());
    //子节点
    console.log(ulObj.childNodes);
    //子元素
    console.log(ulObj.children);

    console.log("===================");

    //第一个子节点
    console.log(ulObj.firstChild);
    //第一个子元素
    console.log(ulObj.firstElementChild);
    //最后一个子节点
    console.log(ulObj.lastChild);
    //最后一个子元素
    console.log(ulObj.lastElementChild);
    //某个元素的前一个兄弟节点
    console.log(my$("three").previousNode());
    //某个元素的前一个兄弟元素
    console.log(my$("three").previousElementSibling);
    //某个元素的后一个兄弟节点
    console.log(my$("three").nextNode());
    //某个元素的后一个兄弟元素
    console.log(my$("three").nextElementSibling);

    /*
    * 总结:凡是获取节点的代码在谷歌和火狐得到的都是======相关节点
    * 凡是获取元素的代码在谷歌和火狐得到的都是=====相关元素
    * 从"======="往后的(从子节点和兄弟节点开始)凡是获取节点的代码在IE8中得到的是元素,
    * 获取元素的相关代码,在IE8中得到的都是undefined------元素的代码,IE8中不支持
    * */
</script>
</body>
</html>

猜你喜欢

转载自www.cnblogs.com/cuilichao/p/9374799.html