我正在尝试确定给定的Angular元素是否是目标Angular元素的祖先:
function isAncestor(element, target) {
for (var parent = target.parent();
parent && parent !== element;
parent = parent.parent()) {
console.log(parent);
}
return parent;
}
这进入了一个无限循环。显然,parent
永远不会null
,因为此代码假定。并且相等比较是不正确的,因为它检查对象引用。
我如何在Angular中执行此操作?
答案 0 :(得分:0)
这是我的解决方案:
function isAncestor(element, target) {
var parent = target;
while (parent.length > 0) {
if (parent[0] === element[0]) {
return parent;
}
parent = parent.parent();
}
return null;
}