La fonction suivante affiche tous les sous éléments de rootElement ayant pour classe className. Le fait de préciser un élément de départ permet de ne pas parcourir tous les éléments de la page.
function displayClassElement(rootElement,className)
{
var elmnt;
nodes = new Array();
if(typeof(rootElement) == 'string')
{
elmnt = document.getElementById(rootElement);
}
else
{
elmnt = rootElement;
}
if(elmnt.cells != undefined)
{
nodes = elmnt.cells;
}
else
{
if(elmnt.rows != undefined)
{
nodes = elmnt.rows;
}
else
{
if(elmnt.childNodes != undefined)
{
nodes = elmnt.childNodes;
}
}
}
for(var i = 0; i < nodes.length; i++)
{
if(nodes[i].tagName != undefined)
{
displayClassElement(nodes[i],className);
if(nodes[i].className == className)
{
nodes[i].style.display = getDisplayStyle(nodes[i]);
}
}
}
}
Image : Dmitry Baranovskiy