JavaScript中节点的相关操作

目录

0.码仙励志

1.节点的介绍

1.解释

2.节点的属性

1.解释

2.nodeType  节点的类型

3.nodeName  节点的名字

4.nodeValue  节点的值

3.获取相关的节点

4.节点的兼容代码 

1.获取任意一个父级元素的第一个子级元素

2.获取任意一个父级元素的最后一个子级元素


0.码仙励志

精彩的人生没有彩排,每天都是现场直播

1.节点的介绍

1.解释

页面中所有的内容(标签,属性,文本(文字,换行,空格,回车)),Node

2.节点的属性

1.解释

可以使用标签--元素.出来,可以使用属性节点.出来,文本节点.点出来

2.nodeType  节点的类型

1----标签,2---属性,3---文本

3.nodeName  节点的名字

标签节点---大写的标签名字,属性节点---小写的属性名字,文本节点----#text

4.nodeValue  节点的值

标签节点---null,属性节点---属性值,文本节点---文本内容

3.获取相关的节点

<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>
    //ul
    var ulObj = document.getElementById("uu");
    //父级节点
    console.log("父级节点");
    console.log(ulObj.parentNode);
    //父级元素
    console.log("父级元素");
    console.log(ulObj.parentElement);
    //子节点
    console.log("子节点");
    console.log(ulObj.childNodes);
    //子元素
    console.log("子元素");
    console.log(ulObj.children);
    console.log("==============================================");
    //第一个子节点
    console.log("第一个子节点");
    console.log(ulObj.firstChild);//------------------------IE8中是第一个子元素
    //第一个子元素
    console.log("第一个子元素");
    console.log(ulObj.firstElementChild);//-----------------IE8中不支持
    //最后一个子节点
    console.log("最后一个子节点");
    console.log(ulObj.lastChild);//------------------------IE8中是第一个子元素
    //最后一个子元素
    console.log("最后一个子元素");
    console.log(ulObj.lastElementChild);//-----------------IE8中不支持
    //某个元素的前一个兄弟节点
    console.log("某个元素的前一个兄弟节点");
    console.log(document.getElementById("three").previousSibling);
    //某个元素的前一个兄弟元素
    console.log("某个元素的前一个兄弟元素");
    console.log(document.getElementById("three").previousElementSibling);
    //某个元素的后一个兄弟节点
    console.log("某个元素的后一个兄弟节点");
    console.log(document.getElementById("three").nextSibling);
    //某个元素的后一个兄弟元素
    console.log("某个元素的后一个兄弟元素");
    console.log(document.getElementById("three").nextElementSibling);
</script>
</body>

4.节点的兼容代码 

1.获取任意一个父级元素的第一个子级元素

    function getFirstElementChild(element) {
        if (element.firstElementChild) {//true--->支持
            return element.firstElementChild;
        } else {
            var node = element.firstChild;//第一个节点
            while (node && node.nodeType != 1) {
                node = node.nextSibling;
            }
            return node;
        }
    };

2.获取任意一个父级元素的最后一个子级元素

    function getLastElementChild(element) {
        if (element.lastElementChild) {//true--->支持
            return element.lastElementChild;
        } else {
            var node = element.lastChild;//第一个节点
            while (node && node.nodeType != 1) {
                node = node.previousSibling;
            }
            return node;
        }
    };

猜你喜欢

转载自blog.csdn.net/tswc_byy/article/details/82728328