2010-03-22 10 views
1

Je veux définir une variable/paramètre en CSS et y accéder par javascript. Quelle est la meilleure façon de faire cela?Définir une variable dans variable/parameter et l'utiliser en javascript?

Une option à laquelle je pensais serait de placer un attribut cutsom sur l'élément body, puis d'accéder à cet attribut via jQuery.

Un peu plus d'infos: Je définis des jeux de couleurs en CSS. J'ai créé une fonction avec RaphaelJS pour dessiner un arrière-plan dégradé sur la page. Je veux que cette fonction utilise une couleur de surbrillance (qui n'est pas utilisée ailleurs sur le DOM) qui sera définie dans le CSS avec les autres éléments de couleur.

Merci

Répondre

2

Créer un élément fictif en utilisant jQuery, affecter la classe hightlightColour à elle, obtenir des définitions CSS que vous pourriez avoir besoin et détruire l'élément.

$(function() { 
    var highlightColour = getClassCSS('highlightColour', 'color'); 
    alert(highlightColour); 
}); 

function getClassCSS(className, attribute) { 
    var mock = $('<div />').addClass(className).appendTo('body'); 
    var value = mock.css(attribute); 
    mock.remove(); 
    return value; 
} 

Cet extrait de code obtiendrait l'attribut color qui est défini pour la classe highlightColour en CSS. Assurez-vous simplement qu'il n'y a rien d'écrasant les attributs. Testé et fonctionnant sur Firefox 3.6.

+0

cela ne fonctionne pas, car "mock" n'acceptera les propriétés que s'il est associé au DOM. (safari testé). – Ross

+0

@Ross, vous avez raison, vous devez d'abord attacher l'élément au DOM. J'ai mis à jour ma réponse. –