我有一个使用jQuery加载到Yahoo弹出窗口的Ajax控件.
我只是使用一个简单的.get请求来加载HTML.
$.get(contentUrl, null, function(response) {
$('#dialog').find('.bd').assertOne().html(response);
}, "waitDlg");
Run Code Online (Sandbox Code Playgroud)
现在问题是加载的内容需要自己的CSS,实际上是动态创建的.我可以选择内联或使用外部CSS样式表.
在Chrome中进行测试表明,使用上述代码在添加到DOM时,不会评估/应用通过AJAX加载的CSS.
Internet Explorer会评估内联css,因为它只会陷入DOM,但Chrome不会.由于完全不相关的问题,我目前无法在FireFox中进行测试.
有没有办法在jQuery中评估一个动态添加到DOM的样式表作为内联或?
我有很多理由要这样做:
我想使用jQuery异步加载文档的CSS.
我找到了这个示例,但这似乎在IE中不起作用:
<script type="text/javascript" src="/inc/body/jquery/js/jquery-1.4.4.min.js"></script>
<script type="text/javascript">
$(function(){
$('<link>', {
rel: 'stylesheet',
type: 'text/css',
href: '/inc/body/jquery/css/start/jquery-ui-1.8.10.custom.css'
}).appendTo('head');
$.getScript("/inc/body/jquery/js/jquery-ui-1.8.10.custom.min.js", function(){
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
基本上我想加载jQuery UI所有其他数据,图像,样式等加载到页面.
这个$.getScript作品非常适合JS文件.唯一的问题是IE中的CSS.
你知道更好的解决方案吗?