按类 id 隐藏 div

Posted

技术标签:

【中文标题】按类 id 隐藏 div【英文标题】:Hide div by class id 【发布时间】:2013-11-08 03:28:05 【问题描述】:

如果我有 <div id="ad1" class="ad"><div id="ad2" class="ad"> 如何通过隐藏所有带有类 ad 的 div 来隐藏两者

我试过了 document.getElementsByClassName(ad).style.visibility="hidden"; 但只有这样才有效function hidestuff(boxid) document.getElementById(boxid).style.visibility="hidden";

【问题讨论】:

getElementsByClassName('ad') 提示:getElementsByClassName 返回多个元素。 document.getElementsByClassName('ad').style.display="none"; CSS / javascript Show / Hide DIV using a CSS class? 的可能重复项 【参考方案1】:

正如 Matt Ball 留下的线索,您需要遍历 getElementsByClassName 结果的结果。

尝试以下方式:

    var divsToHide = document.getElementsByClassName("ad");

    for(var i = 0; i < divsToHide.length; i++)
    
    divsToHide[i].style.visibility="hidden";
    

【讨论】:

正是我想要的 效果非常好【参考方案2】:

使用 jquery .hide()

jsfiddle demo

$('.ad').hide();

【讨论】:

【参考方案3】:
$('.divClassName').hide();

这将解决您的问题。

在您的情况下,它将如下所示。 $('.ad').hide(); 这将隐藏所有类名为“ad”的元素。

【讨论】:

【参考方案4】:

要使 iframe 中的内容可见 - 请尝试以下操作:

var frame = document.getElementById("chatFeed"); 
var msg2 =frame.contentDocument.getElementsByClassName("publisherWrapper");
for (i = 0; i < msg2.length; i++) 
msg2[i].style.visibility="visible";

【讨论】:

以上是关于按类 id 隐藏 div的主要内容,如果未能解决你的问题,请参考以下文章

div隐藏和显示

div 设置隐藏后,在页面仍然占位,如何不让它占位

关于div标签的显示与隐藏

中隐藏没有ID的div

div隐藏和显示

JQuery按ID隐藏Div中的标签