查找最近的锚点
如果有的话,查找最接近给定 node
的锚点节点。
- 使用
for
循环和Node.parentNode
从给定的node
向上遍历节点树。 - 使用
Node.nodeName
和String.prototype.toLowerCase()
来检查任何给定的节点是否是锚点 ('a'
)。 - 如果找不到匹配的节点,则返回
null
。
const findClosestAnchor = node => {
for (let n = node; n.parentNode; n = n.parentNode)
if (n.nodeName.toLowerCase() === 'a') return n;
return null;
};
findClosestAnchor(document.querySelector('a > span')); // a