如何检查元素是否因父级而不可见因为它的类是隐藏的

时间:2016-04-06 10:19:48

标签: javascript html inheritance element visibility

我有一系列复选框,想要将它们(选中/取消选中)作为一个组进行切换,但只能将它们切换为真正可见的。

<style id=dynamicStyle>DIV.filterLevel3{display:none;}</style>
<div class="filterLevel3">
    <input type=checkbox id=cbx_123456 name=cbx_123456 class=cbxForSwitch>
    ... more elements belonging to the checkbox, 
    ... always hidden on shown together
</div>

dynamicStyle.innerHTML可能会被另一个javascript更改。更改可见性工作正常,但我需要选择类&#34; cbxForSwitch&#34;的所有复选框。目前可见。

我已经看过很多使用jQuery的例子,但是所有这些例子都在检查所述元素的css属性或他的样式等。我需要在资源管理器实现包括继承在内的所有样式规则后获得实际可见性。

1 个答案:

答案 0 :(得分:0)

使用jQuery,您可以使用parent()函数获取父元素的css属性。如果家长显示&#39; css属性设置为none,然后可以使用jquery函数prop()来检查该框。

$('input[type=checkbox]').each(function() {
  if ($(this).parent().css('display') !== 'none') {
    $(this).prop('checked', true);
  }
});

这是JSFiddle