jquery / javascript隐藏除div及其子项之外的所有内容

时间:2014-05-23 11:55:53

标签: javascript jquery html css

如何隐藏课程application之外的一切?我想隐藏body标签内的所有内容,但隐藏在<div>的{​​{1}}类之外。可能吗?但是,application的所有孩子都应该仍然可见。

<div>

2 个答案:

答案 0 :(得分:5)

您的示例中没有要隐藏的元素,但如果有,您可以执行类似

的操作
$('body').children(':not(.application)').hide();

FIDDLE

除了.application之外,这将获取body标签的所有直接子项并隐藏它们。


修改

如果你在主体中直接有textNodes,那些就不能被隐藏,因为它们不是样式的,你必须先将这些节点包装在元素中,然后再做这样的事情

$('body').contents().filter(function() {
    return this.nodeType === 3;
}).wrap('<span />');

FIDDLE

只有这样才能将样式应用于那些textNodes。

答案 1 :(得分:0)

只需使用css

div.application ~ *{
  display:none !important;
}