Jquery检查元素是否为元素的父元素或祖先元素。

时间:2015-08-13 08:06:50

标签: jquery

有没有办法找出元素是否是其他元素的父元素或祖先元素。

我搜索了jquery并找到了以下方法。但是在这里我们不能使用任何java脚本普通对象或jquery对象。

$.contains( document.documentElement, document.body ); // true

如何验证?请建议。

5 个答案:

答案 0 :(得分:3)

检查孩子的数量是否在那里:

contains = function (parent, child) {
    if ( $(parent).find(child).length > 0) {
      return true;
    } else {
      return false;
    }
}

使用这种方式:

contains("body", ".check");

答案 1 :(得分:2)

使用.closest(),您可以遍历DOM树。如果返回的长度大于0,则找到父/祖先。

例如:

if ($(".child").closest(".parent").length){
   alert("parent / ancestor found");
}

http://jsfiddle.net/dqactw0a/1/

答案 2 :(得分:0)

一种选择是选择元素,例如

if ( $('#parent .child').length ) {
  // the element #parent is a parent or ancestor of .child
} else {
  // the element #parent is NOT a parent or ancestor of .child
}

答案 3 :(得分:-1)

获取元素父级:

$(elementSelector).parent();

获取元素子元素:

$(elementSelector).find(ChildSelector);

答案 4 :(得分:-1)

if ($('#div1').children().length > 0) {
     alert('i'm a parent div')
}

children()函数返回该对象是否有子级。 use可以用它来检查元素是否是父元素。