我有一个div的页面,每个页面都有多个类。
<div class='publication parent20'></div>
<div class='publication parent12 parent42 parent91'></div>
<div class='publication parent20'></div>
<div class='publication parent32 parent23'></div>
我需要一个函数,它将一个类作为变量传递给它,将它们的样式设置为所有div,发布类为none,然后设置具有指定类的标记。
function swap_pub(pub){
document.getElementById("publication").style.display = "none";
//set style.display = "block" to all elements with class = pub
}
关于如何做到这一点的任何想法。
答案 0 :(得分:1)
var pubs = document.getElementsByClassName('publication'); // a NodeList
for (var i = 0; i < pubs.length; i++) {
pubs[i].style.display = 'block';
}
这是使用jQuery看起来的样子:
$('.publication').show(); // concise
答案 1 :(得分:0)
还有querySelectorAll
比getElementsByClassName
支持得更广泛。
function setDisplay(className, display) {
var items = document.querySelectorAll('.' + className);
var i = items.length;
while (i--) {
items[i].style.display = display;
}
}