Comment Modifier les proprités d'une classe css par javascript?
Par Paul de Rosanbo, samedi 11 septembre 2004 à 17:18 :: Code :: #3 :: rss
Par habitude, je javascript ce limite souvent a modifier les propriétés d'affichage css d'un élément html sur la page, mais il arrive qu'il soit nécessaire de modifier les propriétés d'affichage avant que la page html soit chargé.
Voici la fonction javascript que j'utilise pour récupérer un element de feuille de style
cantico.prototype._getCssRule = function(name)
{
if (typeof this.config.cacheCssRule[name] != 'undefined')
{
return this.config.cacheCssRule[name];
}
else
{
var rules = document.styleSheets[0].rules||document.styleSheets[0].cssRules;
for(var r=0;r<rules.length;r++)
{
if(rulesr.selectorText=='#'+name)
{
this.config.cacheCssRule[name] = rules[r].style;
return rules[r].style;
}
}
}
return null;
}
Ma fonction fesait partie d'un objet, elle ne peut pas fonctionner telle quel. Il y a là dedans un espece de systeme de cache pour éviter de reparcourir la tableau à chaque appel.
var rules = document.styleSheets[0].rules||document.styleSheets[0].cssRules;
cette ligne est pour gérer le cas mozilla/IE apparament ca marche bien comme ca, on obtient un tableau avec toutes les regles css de la feuille de style.
Le fait d'utiliser ce systeme permet de faire un afficher/cacher en javascript en ayant un style par défaut qui reste conforme aux normes d'accessibilité.
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.