判断DOM元素是否为父子关系

代码

/**
 * @param {HTMLElement} node
 * @param {HTMLElement} parent
 * @return {Boolean} found
 */
function hasParent(node, parent) {
  while (node) {
    if (node === parent) {
      return true;
    }
    node = node.parentNode;
  }
  return false;
}

实例

html

sdjfosjdf

这是另外的标签

js
const node = document.getElementById('img')
function callback(e){
  console.log('hasParent(e.target, node)',hasParent(e.target, node))
}
window.addEventListener('click', callback)

说明:

  • 点击h3标签或者id为img的div返回true. 其余返回false

你可能感兴趣的:(判断DOM元素是否为父子关系)