jsはjqueryの中のいくつかの方法parentをまねて、parentUntil、children

2186 ワード

時々仕事が必要で、前章の方法に続いて、jsでjqueryの中のいくつかの方法parent、parentUntil、childrenを真似します.
 
function parent(node){

    return node.parentNode || null;

}



function parentUntil(node, parentNode){

    while(parent(node) != parentNode){

        node = parent(node);

    }

    return parentNode;

}



function children(parentNode){

    var children,

        length,

        nodeArray = [],

        i = 0;

    if(parentNode.nodeType === 1){

        children = parentNode.children || parentNode.childNodes; //    ff3.6     ,          ,    children

        length = children.length;

        for(; i < length; i++){

            if(children[i].nodeType !== 1){

                continue;

            }

            nodeArray.push(children[i]);

        }

        return nodeArray;

    }

    else{

        return null;

    }

}