// create a style element $("#main").html('<style id="custom_persona_css"></style>'); $("#custom_persona_css").append('#abc{ color:#000000; }'); As you can tell, this does not work in IE8!How can I make it work in IE8?There will be an error of : 'unexpected call to method or property access' because IE8 does not recognize the html as valid (abc part)
4 Réponses :
Vous utilisez jQuery et JQuery a une immense bibliothèque de méthodes pour changer de manière dynamique le style des éléments: ci-dessus ne sont que deux exemples d'utilisation de jQuery pour affecter le style de un élément ou un groupe d'éléments identifiés par le sélecteur. p> Ainsi, pour changer la couleur de l'élément avec ID = "ABC", ce qui suivrait fonctionnerait: P> $('#abc').addClass('custom_persona');
// OR
$('#abc').addClass('.some_other_custom_style');
$('#abc').removeClass('custom_persona');
Je ne peux pas faire ça. Parce que les utilisateurs définissent les règles, et je les applique. Ils ne sont pas placés en pierre.
Qu'entendez-vous que les utilisateurs définissent les styles? Même si les utilisateurs définissent les styles, vous devriez toujours pouvoir utiliser l'une des techniques susmentionnées pour les appliquer. Maintenant, je n'ai pas essayé cela, mais vous pouvez essayer de générer de manière dynamique ces styles fournis par l'utilisateur en tant que fichiers CSS dynamiques et les ajouter dans la section de tête var i = $ ("link '). ATT (" href " , "/ usergenerated.php? userid = 555"); $ ('il ad'). Appendcild (i); code> dans ce cas, userGenerated.php tire les styles d'un fichier ou d'une base de données.
Je suis d'accord avec JMort253 qui modifier peut-être directement des attributs de style, ou le chargement d'un fichier CSS est le meilleur. Vous pouvez ensuite utiliser les méthodes plus efficaces AddClass et Removeclass. Cela étant dit, les éléments de style devraient être dans la tête (ils travaillent dans le corps bien sûr, mais ne sont pas officiellement code> pris en charge comme je me souviens). Vous pouvez donc faire quelque chose comme ceci à cette fin.
@ Dr.molle - en fait non. Non ça ne le fait pas. Je ne sais pas pourquoi. Si vous venez de taper le code, cela fonctionne (modifié ma réponse). J'ai essayé de définir Csstext comme suggéré dans votre réponse, mais cela n'a pas fonctionné.
Est-ce que cela fonctionne: ou p>
dans MSIE Définit la propriété CSstext de l'objet stylesheet liée au http://jsfiddle.net/doktormolle/bljuv/ strud> p> Plus d'infos: http://msdn.microsoft.com /en-us/library/ie/MS533698%28V=VS.85%29.aspx P> P> code> -Element:
But. Je ne sais pas pourquoi les gens n'ont pas voté à tout le chemin. Ceci est 100% adapté à mes besoins. Merci!