如果 child 没有 class 添加 class
If child doesn't have class add class
我正在尝试通过 jquery 将 class 添加到 child,仅当 parent 的所有 children 不包含class 已经。我不知道我做错了什么:
https://jsfiddle.net/54988qdb/
<style type="text/css">
.active-tag {
color: red;
}
</style>
<div class="tagcloud">
<a class="all" href="#all">All</a>
<a class="test1" href="#1">1</a>
<a class="test2" href="#1">1</a>
<a class="test3" href="#1">1</a>
</div>
<script>
if (!$('.tagcloud a').hasClass('active-tag')) {
$('.all').addClass('active-tag');
}
</script>
您可以使用 jQuery 选择器的长度来简化事情:
if( ! $('.tagcloud .active-tag').length ) {
$('.all').addClass('active-tag');
}
编辑:
您的 fiddle 无效,因为 jQuery 未包含在内。
@j08691 回答了问题。我忘了在我的 jsfiddle (facepalm) 中定义 jquery。
我正在尝试通过 jquery 将 class 添加到 child,仅当 parent 的所有 children 不包含class 已经。我不知道我做错了什么:
https://jsfiddle.net/54988qdb/
<style type="text/css">
.active-tag {
color: red;
}
</style>
<div class="tagcloud">
<a class="all" href="#all">All</a>
<a class="test1" href="#1">1</a>
<a class="test2" href="#1">1</a>
<a class="test3" href="#1">1</a>
</div>
<script>
if (!$('.tagcloud a').hasClass('active-tag')) {
$('.all').addClass('active-tag');
}
</script>
您可以使用 jQuery 选择器的长度来简化事情:
if( ! $('.tagcloud .active-tag').length ) {
$('.all').addClass('active-tag');
}
编辑:
您的 fiddle 无效,因为 jQuery 未包含在内。
@j08691 回答了问题。我忘了在我的 jsfiddle (facepalm) 中定义 jquery。