操作Dom中父子元素与兄弟元素

Dom的childNodes可以得到当前Dom的直接所有子元素

但是中间可能会有空格,如FF,Chrome,在使用前需要先过滤掉空格元素

    function Del_spaceChild(elem) { //过滤空格的函数
        var elem_child = elem.childNodes; //获取所有子元素
        for (var i = 0; i < elem_child.length; i++) {
            //如果是文本节点,并且内容只包含空格则删除该节点
            if (elem_child[i].nodeName == "#text" && !/\S/.test(elem_child[i].nodeValue)) {
                elem.removeChild(elem_child[i]); //如果该元素为空格则删除
            }
        }
    }
    //使用方法
    var parentDom = document.getElementById("tt");
    Del_spaceChild(parentDom);
    alert(parentDom.childNodes.length);

Dom的previousSibling和nextSibling可以得到前一个或后一个相邻元素,如果已经是最后一个,则返回null

Dom的parentNode可以得到父元素

原文地址:https://www.cnblogs.com/FlyCat/p/2572204.html