Sha*_*s88 22 html javascript dom
我想知道,如何递归地找出元素的所有父节点.假设我有以下代码段
<a href="#"><font>Hello</font></a>
在这里我想知道font标签的父节点是否是锚标签.现在可以通过简单地检查.parentNode属性来实现.但是,如果有以下情况,如果,
<a href="#"><font><b>Hello<b></font></a>
要么
<a href="#"><font><b><u>Hello</u><b></font></a>
所以,基本上,如何知道我们是否已达到最顶级的父节点?
Jir*_*riz 40
您可以从元素遍历到根,查找所需的标记:
function findUpTag(el, tag) {
while (el.parentNode) {
el = el.parentNode;
if (el.tagName === tag)
return el;
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
您可以使用start元素调用此方法:
var el = document.getElementById("..."); // start element
var a = findUpTag(el, "A"); // search <a ...>
if (a) console.log(a.id);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20626 次 |
| 最近记录: |