操作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可以得到父元素

你可能感兴趣的:(dom)