尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

关于前端获取DOM节点的兼容IE6的代码封装

关于前端获取DOM节点的兼容IE6的代码封装 返回所有子元素节点的代码封装// 封装一个函数这个函数可以返回元素的所有子元素节点(兼容到IE6)类似children的功能 function getChildren(node){ // 结果数组 var children []; // 遍历node这个节点的所有子节点判断每一个子节点的nodeType属性是不是1 // 如果是1就推入结果数组 for(var i 0; i node.childNodes.length; i){ if(node.childNodes[i].nodeType 1){ children.push(node.childNodes[i]); } } return children; }返回元素的前一个元素兄弟节点function getElememtPrevSibling(node){ var o node // 是呀while语句 while(o.previousSibling ! null){ if(o.previousSibling.nodeType 1){ // 结束循环找到了 return o.previousSibling; } // 让o成为它的前一个节点 o o.previousSibling; } return null }返回元素的所有兄弟节点// 封装第三个函数这个函数可以返回元素的所有兄弟节点 function getAllElementSibling(node) { // 元素前面的兄弟节点 var prev []; // 元素后面的兄弟节点 var next []; var o node // 遍历node的前面的节点 while(o.previousSibling ! null) { if(o.previousSibling.nodeType 1) { prev.unshift(o.previousSibling); } o o.previousSibling; } o node // 遍历node的后面的节点 while(o.nextSibling ! null) { if(o.nextSibling.nodeType 1) { next.push(o.nextSibling); } o o.nextSibling; } // 将两个数组进行合并然后返回 return prev.concat(next) }
返回列表