2013-06-12 44 views
2

我在单个页面上有一个iframe,并且我将html(存储在mysql中)加载到iframe中。 我想申请一个单独的样式表到iframeJQuery - 将样式表应用于Iframe(相同的域)

下面是我在做什么至今:

<?php 
    $storedhtml = '<strong>Testing</strong><br><br>lots more html text......'; 
?> 

<iframe id="lovely_pages" src="about:blank" style="width:99%;height:700px;" frameBorder="0"></iframe> 

<script language="javascript" type="text/javascript"> 
$(document).ready(function(){ 

    $('#lovely_pages').contents().find('html').html('<?php echo $storedhtml; ?>'); 

}); 
</script> 

这是我想申请到iframe样式表:

<link href="/styles/iframe_only.css" rel="stylesheet" type="text/css">

我试着将样式表到html()$storedhtml变量,但这并没有改变任何东西。 任何人都可以看到我在做什么不正确?

+0

看起来不像你有一个头,身体,或在您的iFrame别的,因为你只是插入一个简单的字符串到documentElement,覆盖其他一切。浏览器可能会尝试修复它,但样式应该在头上,所以您必须插入有效的HTML或访问浏览器创建的头元素来尝试修复您的愚蠢错误。 – adeneo

+0

我只是在玩弄,因为我注意到'iframe'里面没有多少东西,除了简单的字符串。 – coffeemonitor

回答

2

下面的下面的修改定胜负:

<?php 
    $storedhtml = '<strong>Testing</strong><br><br>lots more html text......'; 
?> 

<iframe id="lovely_pages" src="about:blank" style="width:99%;height:700px;" frameBorder="0"></iframe> 

<script language="javascript" type="text/javascript"> 
$(document).ready(function(){ 

    $('#lovely_pages').contents().find('head').html('<link href="/styles/iframe_only.css" rel="stylesheet" type="text/css">'); 
    $('#lovely_pages').contents().find('body').html('<?php echo $storedhtml; ?>'); 

}); 
</script> 
相关问题