原贴连接
 
1.在整个文档范围内查询元素节点
 
| 功能 | API | 返回值 | 
| 根据id值查询 | document.getElementById(“id值”) | 一个具体的元素节 | 
| 根据标签名查询 | document.getElementsByTagName(“标签名”) | 元素节点数组 | 
| 根据name属性值查询 | document.getElementsByName(“name值”) | 元素节点数组 | 
| 根据类名查询 | document.getElementsByClassName(“类名”) | 元素节点数组 | 
 
2 在具体元素节点范围内查找子节点
 
| 功能 | API | 返回值 | 
| 查找子标签 | element.children | 返回子标签数组 | 
| 查找第一个子标签 | element.firstElementChild | 标签对象 | 
| 查找最后一个子标签 | element.lastElementChild | 节点对象 | 
 
3 查找指定元素节点的父节点
 
| 功能 | API | 返回值 | 
| 查找指定元素节点的父标签 | element.parentElement | 标签对象 | 
 
4 查找指定元素节点的兄弟节点
 
| 功能 | API | 返回值 | 
| 查找前一个兄弟标签 | node.previousElementSibling | 标签对象 | 
| 查找后一个兄弟标签 | node.nextElementSibling | 标签对象 | 
 
5 属性操作
 
| 需求 | 操作方式 | 
| 读取属性值 | 元素对象.属性名 | 
| 修改属性值 | 元素对象.属性名=新的属性值 | 
 
6 标签体的操作
 
| 需求 | 操作方式 | 
| 获取或者设置标签体的文本内容 | element.innerText | 
| 获取或者设置标签体的内容 | element.innerHTML | 
 
7 DOM增删改操作
 
| API | 功能 | 
| document.createElement(“标签名”) | 创建元素节点并返回,但不会自动添加到文档中 | 
| document.createTextNode(“文本值”) | 创建文本节点并返回,但不会自动添加到文档中 | 
| element.append(ele) | 将ele添加到element元素中 | 
| element.appendChild(ele) | 将ele添加到element所有子节点后面 | 
| parentEle.insertBefore(newEle,targetEle) | 将newEle插入到targetEle前面 | 
| parentEle.replaceChild(newEle, oldEle) | 用新节点替换原有的旧子节点 | 
| element.remove() | 删除某个标签 | 
 
8.doc实战
 
<!DOCTYPE html>
<html lang="zh-CN">
    <head>
        <meta charset="UTF-8"/>
        <title>DOM操作</title>
        <script>
            window.onload = function(){
                //1.根据ID获取元素信息
                let p1 = document.getElementById('p1');
                console.log("p1",p1)
                //2.根据name属性获取元素信息
                let name1 = document.getElementsByName("name1");
                console.log("name1",name1.length);
                //alert(inputNames.length)
                name1[0].value = "aabbcc";
                //3.通过input标签获取元素
                let input1 = document.getElementsByTagName("input")
                console.log("input1",input1.length);
                //alert("input标签的个数:"+inputTags.length)
                input1[0].value = "112233";
                //4.通过class类型获取数据
                let class1 = document.getElementsByClassName("classTag");
                console.log("class1",class1.length);
                //alert("通过类型获取元素的个数:"+classTag.length)
                class1[0].value = "oooooo";
                //5.查找指定元素的子元素
                let children1 = document.getElementById("div1").children;
                console.log("children1",children1);
                //alert("子节点个数:"+childrens.length)
                children1[1].innerHTML = "nihai";
                
                //6.获取第一个子元素
                let firstP = document.getElementById('div1').firstElementChild;
                console.log("firstP",firstP);
                //7.获取最后一个子节点
                let lastP = document.getElementById('div1').lastElementChild;
                console.log("lastP",lastP);
                //8.根据指定元素,查找父节点
                let parentP = document.getElementById('p1').parentElement;
                console.log("parentP",parentP);
                //9.查找指定兄弟的 前一个
                let previousf = document.getElementById('p2').previousElementSibling;
                console.log("previousf",previousf);
                //10.查找指定兄弟元素的后一个
                let previousl = document.getElementById("p1").nextElementSibling;
                console.log("previousl",previousl);
                //11.获取元素属性和属性值  获取id="p1"的ID值
                let propertyId = document.getElementById('p1').id;
                console.log("propertyId",propertyId);
                //12 将id="p1" 修改为p3
                let propertyUp = document.getElementById('p1').id;
                propertyUp = 'p3';
                console.log("propertyUp",propertyUp);
                //13 获取标签体的内容
                let innerText = document.getElementById('p2').innerText;
                console.log("innerText",innerText);
                //14 修改id=p2标签体的内容
                let innserTextUp = document.getElementById('p2').innerText;
                innserTextUp = '而我在等你';
                console.log('innserTextUp',innserTextUp);
                //15 获取id=div1 的标签体内容
                let innerTextD = document.getElementById('div1').innerText;
                console.log('innerTextD',innerTextD);
                //16 修改id=div1的内容
                let innerTextUp = document.getElementById('div1').innerText;
                innerTextUp = '窗前明月光,疑似地上霜,举头望明月,低头思故乡.'; 
                console.log('innerTextUp',innerTextUp);
            }
        </script>
    </head>
    <body>
        <input type="text" name="name1" id="id" class="classTag">
        <div id="div1">
            <div id="p1">天青色等烟雨,</div>
            <div id="p2">而我在等你,</div>
            <p>炊烟袅袅升起,</p>
            <p>隔江千万里.</p>
        </div>
    </body>
</html>
 
9.F12效果
 
