DOM节点

89 阅读2分钟

1、childNodes

    获取标签的所有子级节点

image.png

2、children

    获取标签的所有子级元素节点

image.png

3、firstChild

    获取标签内的第一个子级节点

image.png

4、lastChild

    获取标签内的最后一个节点

image.png

5、firstElementChild

    获取 标签内第一个子级元素节点

image.png

6、lastElementChild

    获取标签的最后一个子级元素节点

image.png

7、nextSibling

    获取下一个兄弟节点

image.png

8、previousSibling

    获取上一个兄弟节点

image.png

9、nextElementSibling

    获取下一个兄弟元素节点

image.png

10、previousElementSibling

    获取 上一级 兄弟元素节点

image.png

11、parentNode

    获取到当前元素的父级

image.png

12、attributes

    获取到当前标签的所有属性节点

image.png

13、节点属性

    <ul a="周一来了">
        <li>国庆快乐</li>
    </ul>

    <script>
        const oUl = document.querySelector('ul')
        const elemNode = oUl.firstElementChild
        const textNode = oUl.firstChild
        const attriNode = oUl.attributes[0] 
    </script>

获取节点类型

    console.log('元素节点:',elemNode.nodeType)
    console.log('元素节点:',textNode.nodeType)
    console.log('元素节点:',attriNode.nodeType)

image.png

获取节点名称

    console.log('元素节点:',elemNode.nodeName)
    console.log('元素节点:',textNode.nodeName)
    console.log('元素节点:',attriNode.nodeName)

image.png

获取节点的值

     console.log('元素节点:',elemNode.nodeValue)
     console.log('元素节点:',textNode.nodeValue)
     console.log('元素节点:',attriNode.nodeValue)

image.png

14、添加DOM

    <script>
        const myDiv = document.createElement('div')
        myDiv.style.width = '100px'
        myDiv.style.height = '100px'
        myDiv.style.backgroundColor = 'red'
        document.querySelector('body').appendChild(myDiv)
    </script>

image.png

15、指定元素插入指定位置

    <div class="div1">div1</div>
    <div class="div2">div2</div>
    <div class="div3">div3</div>
    <script>

        const myDiv = document.createElement('div')
        const div2 = document.querySelector('.div2')
        myDiv.style.width = '100px'
        myDiv.style.height = '100px'
        myDiv.style.backgroundColor = 'red'
        myDiv.innerHTML = 'div4'
        document.querySelector('body').insertBefore(myDiv,div2)
    </script>

image.png

16、删除/修改元素

    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .div1{
            width: 100px;
            height: 100px;
            background-color: yellow;
        }
        .div2{
            width: 100px;
            height: 100px;
            background: pink;
        }
        .div3{
            width: 100px;
            height: 100px;
            background: green;
        }
    </style>
</head>
<body>
    <div class="div1">div1</div>
    <div class="div2">div2</div>
    <div class="div3">div3</div>
    <script>


        const myDiv = document.createElement('div')
        const div2 = document.querySelector('.div2')
        //删除 div2 
        div2.remove()
        

        
    </script>
</body>
</html>

image.png

    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    
</head>
<body>
    <div class="div1">
        <p>我是p标签</p>
    </div>
        
    <script>
        const span1 = document.createElement('span')
        const p1 = document.querySelector('p')
        const div1 = document.querySelector('.div1')
        span1.innerHTML = '我是span标签'
        div1.replaceChild(span1,p1)

    </script>
</body>
</html>

image.png

17、克隆DOM

    <!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            padding: 0;
            margin: 0;
        }
        ul {
            width: 200px;
            height: 200px;
            background-color: pink;
        }

        ol {
            width: 200px;
            height: 200px;
            background-color: green;
            margin-top: 20px;
        }
    </style>
</head>

<body>
    <ul>
        <li class="box"><span>你好~</span></li>
    </ul>
    <ol>

    </ol>
    <script>
        var myLi = document.querySelector('.box')
        var myOl = document.querySelector('ol')
        var cloneLi = myLi.cloneNode(true)
        myOl.appendChild(cloneLi)
    </script>
</body>

</html>

image.png