jquery - 显示具有特定 CSS 类的子元素的元素

标签 jquery

我有 2 个隐藏的 DIV
每个DIV都包含一个SPAN
我只想显示具有 RedBackground 类 SPAN 的 DIV
我编写的 JavaScript 代码无法正常工作

$("div span.RedBackground").show();
.greenBackground {
    color: green;
}

.RedBackground {
    color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div style="display: none;">
<span  class="RedBackground">show this</span>
</div>

<div style="display: none;">
<span  class="GreenBackground">NOT show this</span>
</div>

最佳答案

使用:has selector获取包含该元素的所有 div 。不需要使用诸如 parentclosest 之类的东西:

$("div:has(span.RedBackground)").show();
.greenBackground { color: green; }
.RedBackground { color: red; }
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div style="display: none;">
  <span  class="RedBackground">show this</span>
</div>

<div style="display: none;">
  <span  class="GreenBackground">NOT show this</span>
</div>

关于jquery - 显示具有特定 CSS 类的子元素的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45233428/

相关文章:

javascript - anchor 链接滚动动画仅在 Squarespace 上刷新 (JQuery) 后才起作用

JavaScript/PHP : Dynamically updating a field given two inputs in a table row

javascript - 使父菜单链接切换子菜单链接

javascript - 使用 localStorage 让我的保存按钮工作

javascript - 尝试确定如何监视或附加异步函数的成功调用

javascript - 部署时 Bootstrap 文件输入不起作用

jQuery,我该如何切换边距

javascript - 从 $.post() 获取 JSON 对象结果

javascript - 如何在 jQuery 中仅包装选定的元素

jquery - ul 有 li,其 id 名称是 jquery 的最大 id?