如果显示班级,如何隐藏父div?
我的尝试:
HTML:
<div>
this content should be hidden.
<div class="hide-parent"></div>
</div>
jQuery的:
<script>
$(document).ready(function(){
$("hide-parent").parent().hide();
});
</script>
同样的想法,但我的不起作用: Hiding parent divs in Jquery
答案 0 :(得分:3)
您需要在hide-parent
前面加上句号,因为它是一个类名称选择器。
固定代码:
<script>
$(document).ready(function(){
$(".hide-parent").parent().hide();
});
</script>
另外,在你的小提琴中,你忘了选择&#34; jQuery&#34;来自图书馆清单。
请参阅此处的固定小提琴:http://jsfiddle.net/uydpesxa/6/
如果DOM中的hide-parent
元素存在,上面的代码将隐藏父元素。
要回答问题的其他部分,如果显示了一个类(我将其解释为含义&#34;未隐藏&#34;):
您可以编写代码以查看具有该类的元素是否可见。一种简单的方法是在选择器中使用:visible
,另一种方法是使用is()
函数。
<script>
$(document).ready(function(){
// for each visible "hide-parent" elem, hide its parent elem.
// option A, using :visible pseudo-selector
// $(".hide-parent:visible").parent().hide();
// or.. option B, using is(); perhaps a bit more maintainable / understandable
$(".hide-parent").each(function () {
if ($(this).is(":visible")) {
$(this).parent().hide();
}
});
});
</script>
在隐藏内容时隐藏父级,请参阅小提琴:http://jsfiddle.net/uydpesxa/7/