发布网友 发布时间:2022-04-23 03:56
共1个回答
热心网友 时间:2023-10-14 00:55
// 高大上就不说了,你如果是要获取父节点的父节点,一定是第n个父节点的话就如下
// 调用的时候, ParentTwo(document.getElementById("**"),0);
var nodeLen = 2;
function ParentTwo(myobj,i){
var parent = myobj.parentNode;
// 第 nodeLen 个父节点就跳出递归
if(i==nodeLen){
return parent;
}else{
return ParentTwo(parent,i+1);
}
}
// 如果你要根据类型,获取父节点的话,就如下
// 调用的时候 ParentTop(document.getElement("**"),"TABLE");
// 其中 type 一定要大写
function ParentTop(myobj,type){
if(myobj){
var parent = myobj.parentNode;
if(parent){
// 使用 nodeName 获取控件类型,和你的 type 比较
// 如果类型相同,则返回 parent,不同则递归
// 当然,你要可以控制,当 nodeName=="body" 的时候,直接return你要的东西
if(parent.nodeName==type){
return parent;
} else {
return ParentTop(parent,type);
}
}
}
return null;
}