获取元素、节点关系

 1 <button name="btn" class="btn" id="btn">点我</button>
 2     <script>
 3         window.onload = function (ev) {
 4             var btn1 = document.getElementById('btn');
 5             var btn2 = document.getElementsByClassName('btn')[0];
 6             var btn3 = document.getElementsByTagName('button')[0];
 7             var btn4 = document.getElementsByName('btn')[0];
 8 
 9             var btn5 = document.querySelector('#btn');//只查找一个,即使后面还有也不会查找 button 类名 Id名
10             var btn6 = document.querySelectorAll('#btn')[0];
11 
12             console.log(btn1);
13             console.log(btn2);
14             console.log(btn3);
15             console.log(btn4);
16             console.log(btn5);
17             console.log(btn6);
18         }
19     </script>
1  // 获取父节点
2     window.onload = function (ev) {
3         var a = document.getElementsByTagName('a')[0];
4         console.log(a.parentNode.parentNode);
5     }
1  // 获取兄弟节点
2     var span = document.getElementById('span');
3     // 下一个
4     var nextEle = span.nextElementSibling || span.nextSibling;
5     console.log(nextEle);
6 
7     // 上一个
8     var preEle = span.previousElementSibling || span.previousSibling;
9     console.log(preEle);
1    var box = document.getElementById('box');
2    // 获取第一个子节点
3    console.log(box.firstElementChild || box.firstChild);
4    // 获取最后一个子节点
5    console.log(box.lastElementChild || box.lastChild);
6    // 获取所有的节点
7    console.log(box.childNodes); //兼容所有
8    console.log(box.children);   //有兼容问题
window.onload = function (ev) {
        // 1. 获取标签
        var box = document.getElementById('box');
        // 2. 获取标签内部的所有节点
        var allNodeLists = box.childNodes;
        // 3. 过滤元素节点
        var newListArr = [];
        allNodeLists.forEach(function (value, key, parent) {
            // console.log(value.nodeType);
            if(value.nodeType === 1){  //判断文本类型,分类1 2 3
                newListArr.push(value);
            }
        });

        console.log(newListArr);
    }

 

posted @ 2019-07-15 01:30  疏影横斜水清浅  阅读(190)  评论(0编辑  收藏  举报