Fil d'ariane
Ligams » Publications » Javascript » getElementByClassName : Récupérer les éléments d'une page par classe CSS
getElementByClassName : Récupérer les éléments d'une page par style
Pour compenser un manque de Javascript, on a tendance détourner un peu l'utilisation des styles CSS à un autre usage : effectuer des traitements sur l'ensemble des éléments d'une page identifiés par l'attribut class.
Voici un modèle de fonction de ce type :
//Définition d'un nouvel espace de nom
var Utils = [];
/**
* Utils.getElementsByClassName : renvoi un tableau d'HTMLElement
* @param className String nom de la classe CSS
* @param tagName String filtre la recherche par nom de balise
* @param elementParent String recherche uniquement les sous noeud de cet élément
* @return Array
*/
Utils.getElementsByClassName = function(_className, _tagName, _elementParent)
{
var oReg = new RegExp("(^|s)"+_className+"(s|$)");
var tag;
(null==_tagName)? tag = "*" : tag = _tagName;
var el;
(null==_elementParent)? el = document : el = _tagName;
var elementsToTest = (tag == "*" && el.all)? el.all : el.getElementsByTagName(tag);
var aRes = new Array();
for(var i=0; i<elementsToTest.length; i++)
{
if(oReg.test(elementsToTest[i].className))
{
aRes.push(elementsToTest[i]);
}
}
return aRes;
}
Commentaires
Votez pour cet article
Vote: 0,00/5
(Nombre de votant(s) : 0)



