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

posted @ 2012-07-01 20:47  Bug山Bug海  阅读(336)  评论(0编辑  收藏  举报