如何找到jQuery父母列表

时间:2015-01-29 14:53:25

标签: jquery

如何获得包含“事物”的父母列表?例如,如果我有这个HTML:

<div>
  <div>
    <div class="A container">
      <div>
          <span class="thing">A thing</span>
      </div>
    </div>
  <div>
  <div class="B container">
      <div>B</div>
  </div>
  <div class="C container">
    <div>
        <span class="thing">C thing 1</span>
    </div>
      <div class="thing">C thing 2</div>
  </div>
</div> 

我想要一个包含2个元素的列表(那些具有A类和C类的容器)

我希望有一个看起来比我现在做的更好的单行内容:

var containers = [];
$.each($('.thing'), function(index, value) {
    containers.push($(value).closest('.container')[0])
});
console.log($.unique(containers));

2 个答案:

答案 0 :(得分:3)

您可以使用:has选择器:

$('.container:has(.thing)').get();

<强> Working Demo

答案 1 :(得分:0)

$唯一的。($(&#39; .thing&#39;。)母体(&#39; .container&#39)))。 我们也可以在parent()调用中有一个选择器。 这不是测试版本。