J'ai un contrôle Ajax qui est chargé dans une popup Yahoo en utilisant jQuery.
J'utilise une simple requête .get pour charger le HTML.
$.get(contentUrl, null, function(response) {
$('#dialog').find('.bd').assertOne().html(response);
}, "waitDlg");
Le problème est que le contenu qui est chargé nécessite son propre CSS qui est en fait créé de manière dynamique. J'ai le choix entre intégrer le CSS ou utiliser une feuille de style CSS externe.
Les tests effectués dans Chrome montrent que le CSS chargé via AJAX n'est pas évalué/appliqué au moment où il est ajouté au DOM à l'aide du code ci-dessus.
Internet Explorer sera évaluer un CSS inlined lorsqu'il reste bloqué dans le DOM, mais Chrome ne le fera pas. Je suis actuellement incapable de tester dans FireFox en raison d'un problème totalement indépendant.
Existe-t-il un moyen dans jQuery d'évaluer une feuille de style qui a été ajoutée dynamiquement au DOM en tant que feuille de style en ligne ou ?
Il y a plusieurs raisons pour lesquelles j'aimerais faire ça :
- le CSS dans la fenêtre popup appartient à la fenêtre popup et peut provenir d'un environnement complètement différent.
- il est dynamique et je ne veux pas le mettre dans la page parent sauf si je dois absolument le faire.
- J'avais prévu que ça marche comme ça et ça ne marche pas ! :-(