jQuery基于父元素的多个.not()选择器

时间:2018-01-24 16:58:21

标签: jquery

所以,假设我有4个部分,在每个部分中我都有一个我想要修改的元素,但不是第一部分和最后一部分中的元素。我该如何编写.not()选择器?这是我尝试过的:

$(function() {
  $('.header', 'section').not('#one, #four').height('200');
});
.header {
  background:black;
  width:100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<section id="one">
  <div class="header"></div>
</section>

<section id="two">
  <div class="header"></div>
</section>

<section id="three">
  <div class="header"></div>
</section>

<section id="four">
  <div class="header"></div>
</section>

1 个答案:

答案 0 :(得分:1)

要解决此问题,您需要对:not元素设置section限制。您目前正在将其应用于.header。试试这个:

&#13;
&#13;
$(function() {
  $('.header', 'section:not(#one, #four)').height(200);
});
&#13;
.header {
  background: black;
  width: 100%;
  height: 20px;
  margin: 5px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<section id="one">
  <div class="header">one</div>
</section>

<section id="two">
  <div class="header">two</div>
</section>

<section id="three">
  <div class="header">three</div>
</section>

<section id="four">
  <div class="header">four</div>
</section>
&#13;
&#13;
&#13;