下一个兄弟元素及上一个兄弟元素兼容

163 阅读1分钟
    标签的nodeType是1
    标签的nodeName是它的标签名
    标签的nodeValue是null

    属性的nodeType是2
    属性的nodeName是它的属性名
    属性的nodeValue是它的属性值

//如果是IE8以后的版本,直接用nextElementSibling如果是IE8以及以前的版本就用nextSibling

function getNextElementSibling(ele) {

    //能力检测
    if (ele.nextElementSibling) {

        return ele.nextElementSibling;
    } else {
        //证明是IE8以前版本

        //只要type不是1,就一直找下一个
        var node = ele.nextSibling;
        while(node.nodeType != 1){

           node = node.nextSibling;
        }

        return node;
    }
}


function getPreviousElement(ele){

    if(ele.previousElementSibling){

        return ele.previousElementSibling;
    }else{

        //证明是IE8以前
        var node =  ele.previousSibling;

        while(node.nodeType != 1){

            node = node.previousSibling;
        }

        return node;
    }
}