//封装一个firstElementChild,要求是兼容ie和标准浏览器functiongetFirstElementChild(ele){// 如果参数不存在if(!ele){returnnull;}//参数存在var f = ele.firstChild;while(f.nodeType!=1){
f = f.nextSibling;// 如果子节点全部遍历一遍,仍然没有元素节点if(f==null){returnnull;}}return f;}
// 获取第一个子元素functiongetFirst(ele){if(!ele){returnnull;}//参数存在var f = ele.firstChild;if(f.nodeType==1){return f;}else{returngetNext(f);}}
获取上一个兄弟元素
// 采用递归的方式,获取上一个兄弟元素,要求兼容 ie低版本functiongetPrev(ele){if(!ele){returnnull;}//获取元素的上一个节点var p = ele.previousSibling;// 判断p是否存在if(!p){returnnull;}return p.nodeType==1?p:getPrev(p);}
获取下一个子节点
functiongetNext(ele){if(!ele){returnnull;}//获取元素的下一个节点var p = ele.nextSibling;// 判断p是否存在if(!p){returnnull;}return p.nodeType==1?p:getNext(p);}