当某些子元素不存在时,我需要向一个div添加类来移动标题。我注意到这是一个重复的问题,因为我找到了这个。
最受欢迎的答案不起作用-它将类应用于两个标题,我不知道为什么。
请看下面的代码:
var linkCheck = $('.navigation').not(':has(.nav-link )');
if (linkCheck) {
$(".main-header").addClass("no-links-header");
}
.no-links-header {
color: red;
margin-bottom: -80px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<div class="main-header">
<h2>The Main Header</h2>
</div>
<div class="navigation">
<a class="nav-link" href="#">A Link</a>
<a class="nav-link" href="#">A Link</a>
<a class="nav-link" href="#">A Link</a>
</div>
<div class="main-header">
<h2>Move this Header down</h2>
</div>
<div class="navigation">
</div>
我做错了什么?
main-header
类的元素? - Scott Marcus$(".main-header")
选择了所有类名为main-header
的元素,所以它将no-links-header
类添加到了两个标题中。 - Scaramouche