jQuery CSS - Écrire dans le <style>-tag
Je veux changer la background-color
de la body
de mon document HTML. Mon problème est que jQuery ajoute le style à la body
tag, mais je veux changer la valeur dans le style
tag. Est-ce possible à l'aide de jQuery?
Exemple De Code
<style title="css_style" type="text/css">
body {
background-color:#dc2e2e; /* <- CHANGE THIS */
color:#000000;
font-family:Tahoma, Verdana;
font-size:11px;
margin:0px;
padding:0px;
background-image: url(http://abc.de/image.jpg);
}
</style>
...
<body>
//....
</body>
jQuery
$('body').css('background-color','#ff0000');
Résultat
<body style="background-color:#ff0000;">
//....
</body>
- essayez
$('style').text(...new definition...)
-- ne l'ai pas testé mais; je ne connais pas jQuery automatisation pour cela. - Donner l'étiquette de style d'un identifiant et d'appel à l'aide de son id. Quelque chose comme: $('#{id}').attr('style', 'background-color:#ff0000;');
Vous devez vous connecter pour publier un commentaire.
Le sont des méthodes spécifiques pour la manipulation de feuilles de style,
DOM: insertRule()
Microsoft: addRule()
Je viens de faire une méthode pour jQuery(peut-être quelqu'un l'a déjà fait, je ne sais pas)
Exemple d'utilisation:
le deuxième argument doit être clair, les règles. Comme option 3ème argument le contexte du document peut être fourni.
Le premier argument sont les sélecteurs en tant que tableau-éléments.
Notez que vous n'avez pas à utiliser qu'il y a différents sélecteur séparés par des virgules, comme MSIE accepte uniquement "Seul les sélecteurs contextuels" comme argument pour addRule()
Découvrez le violon: http://jsfiddle.net/doktormolle/ubDDd/
Tout en ne changeant pas d'un style existant élément, cela fonctionne comme une manière de croix-navigateur pour en créer un nouveau:
Par en cascade, il va surcharger les styles existants, ce qui devrait faire l'affaire.
jQuery ajoute toujours son CSS dans la balise elle-même.
Je pense que vous devriez utiliser le
append()
fonction avec un nouveau corps de règles de style.Comme ceci:
ou
J'espère que c'est ce que tu voulais dire...
J'ai été en mesure de modifier l'article en y ajoutant du html.
Vous pouvez changer votre corps de la classe, mais vous ne pouvez pas changer votre style de la balise:
HTML:
JavaScript:
highlight
a à la classe-sélecteur de.
:.highlight { .. }
Peut-être qu'il est plus facile de copier toutes les règles en vigueur pour une chaîne de caractères, ajouter vos trucs ou de modifier ce qui existe, supprimez la balise existante et la remplacer modifiée, comme suit:
Aucune des réponses mentionnent
jqueryEl.text
, si elle est ici: