选择外部和子,没有内部div

时间:2014-01-28 10:19:38

标签: javascript jquery

<div class="outer">
 <div class="inner">
  <div class="child">

  </div>
 </div>
</div>

我想只选择外部和儿童。但选择外部将包括内部和儿童。如果我使用not$(".outer , .child").not(".inner"),它也会排除孩子。

我想选择外部和子级,没有内部

4 个答案:

答案 0 :(得分:1)

由于您无法使用单个查询完美地选择它,因此您最好将其从DOM中取出(您无法获得所需的结果as is

//So clone it it from the dom
var outer = $('.outer').clone();
var child = $('child').clone();

// Remove the `Inner` from the cloned version
outer.find('.inner').detach();

// Add the child to the outer.
outer.append(child);

答案 1 :(得分:0)

您可以使用:

$('.outer, .outer :not(.inner)')

答案 2 :(得分:0)

只需使用.outer,.child

$('.outer,.child')

答案 3 :(得分:0)

像这样使用:

$('.outer .child').not('.inner .child');

demo

或者,使用它如何:

$('.outer > .child')

demo

或者,你指的是这样的:

$('.outer, .outer .child').not('.inner .child');