当 child div 为 "display: block" 时将 class 添加到 parent div 并在 "display: none" 时删除?

Add class to parent div when child div is "display: block" and remove when "display: none"?

我有一个选项卡设置,我希望完成以下任务:

我想要 child div 和 class fifty 将 class flex 添加到他们的 parent div DTE_Form_Content 当他们的风格是 display: block 时,删除 class flex 当他们的风格是 display: none.

结构是这样的:

<div class="DTE_Form_Content">
    <div class="DTE_Field_Name_ps-ceilings_amt" style="display: none">
    <div class="DTE_Field_Name_app-co-ds fifty" style="display: block">
</div>

这将允许我更改 child div 布局的格式。我怎么能做到这一点?我的想法可能有效:

if ( $('div.fifty').css('style="display: block"') ) {
  $('div.DTE_Form_Content').addClass('flex');
} else {
  $('div.DTE_Form_Content').removeClass('flex');
}

编辑:这不是一个重复的问题。我的问题与包含特定 class 的 children 有关,而标记的重复项则没有。

var $dte = $('.DTE_Form_Content');

$('.fifty').is(':visible') ? $dte.addClass('flex') : $dte.removeClass('flex')

您可以尝试此解决方案,使用三元还增加了 IMO 的清洁元素。如果这对您有用,请考虑接受答案:)

试试这个

if($("div.fifty").css("display")=="block")
{
 $("div.DTE_Form_Content").addClass("flex");
}
else
{
 $("div.DTE_Form_Content").removeClass("flex");
}