2011-05-26 2 views
0

Ma page Web comprend du javascript externe (le widget météo MET Office pour être précis), qui charge du code HTML dans la page.Méthode pour changer la couleur du widget chargé via javascript

J'ai essayé de changer la couleur du widget en utilisant jQuery pour changer le css de bits particuliers une fois la page chargée, mais cela ne semble pas fonctionner.

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('div#location').css('color', 'red !important'); 
    }); 
</script> 

Une suggestion? Merci.

+0

vérifier le changement que vous avez fait ci-dessus en utilisant Firebug , voir si cela fonctionne, sinon quelque chose de plus bas dans le dom a un style qui remplacera votre valeur ... – Haroon

+0

Quand le widget met office est-il réellement chargé sur la page? avant document.ready ou via un appel ajax plus tard? – Haroon

Répondre

0
$('#location').css({'color':'#f00'}); 

Rappelez-vous, si vous avez des éléments stylés dans la div, ils peuvent remplacer le style du conteneur. Une meilleure solution serait de créer des règles de css et il suffit d'appliquer une classe du contenu chargé JS

JS:

$('#location').addClass('my-awesome-color-class'); 

CSS:

.my-awesome-color-class, 
    .my-awesome-color-class a, 
    .my-awesome-color-class p { color: #f00 !important } /* ans so on and so forth */ 
+0

Cela ne fonctionne pas, j'ai peur. Juste remarqué le widget javascript insère comme un iFrame plutôt que directement dans ma page - est-il de toute façon de changer le CSS dans une page externe? – zorc323

+0

Non, sauf si l'iframe utilise le même domaine que vous ou si vous avez accès à la page iframes (accès au code), ou si le widget autorise un style supplémentaire via les paramètres. – devmatt

Questions connexes