如何使用Jquery将当前文档克隆到IFrame

如何使用Jquery将当前文档克隆到IFrame,jquery,iframe,Jquery,Iframe,任务: 当我的主页加载时,我想正常加载页面。在所有脚本运行之后,我想使用Jquery将IFrame注入到主体中,并使用它克隆当前页面。(为什么?这样我就可以有一部分页面不会在我的站点页面之间重新加载。) 我可以使用src属性插入iframe并成功克隆页面,但是,这会导致页面上的所有内容下载两次(一次是在页面第一次加载时,另一次是在脚本插入iframe时) 因此,我想使用JQuery来克隆当前页面(head和body),并将其附加到Iframe中,或者使用新的html5 srcdoc属性 目前,我

任务:

当我的主页加载时,我想正常加载页面。在所有脚本运行之后,我想使用Jquery将IFrame注入到主体中,并使用它克隆当前页面。(为什么?这样我就可以有一部分页面不会在我的站点页面之间重新加载。)

我可以使用src属性插入iframe并成功克隆页面,但是,这会导致页面上的所有内容下载两次(一次是在页面第一次加载时,另一次是在脚本插入iframe时)

因此,我想使用JQuery来克隆当前页面(head和body),并将其附加到Iframe中,或者使用新的html5 srcdoc属性

目前,我对这两条路线都不满意。让我在此概述两种方法:

克隆和附加 生成结果srcdoc=“[object][object]”

另外,我试图添加srcdoc标记,但我不能。请给我高分的人?

除了SRCDOC(我还不知道)

恐怕克隆()不是一个选项。关于DOM规范,不允许在文档之间移动节点(至少在MSIE中是不可能的)。有一个DOM方法可以导入节点,但据我所知,任何浏览器都不支持该方法(
DOMDocument->importNode()


此外:克隆不会阻止大多数浏览器的“双重下载”。

据我所知,IE 9、FF 5、Chrome 12或Safari 5(在Win 7上)不支持
srcdoc
属性

即使像这样简单的例子也不起作用(目前):


    // Get the width & height of current window
  wwidth = $(window).width();
  wheight = $(window).height();

  // inject the iframe 
  $("body")
   .append(
   '<iframe seamless ' + 
   ' class="hidden" id="iframe" border="0" frameborder="0" width="' 
   + wwidth + '" height="' + wheight + '"></iframe>' 
   + '<div id="temp"></div>'
   );

                // Attempt to replace iframe contents with current page contents
                $('iframe').contents().replace( $("html").clone().not("iframe") );
// Same as above bu this part
// Attempt to set iframe contents with srcdoc
$('iframe').attr("srcdoc" , $('html').clone() );
<!DOCTYPE HTML>
<html>
    <head>
        <meta charset="utf-8" />
    </head>
    <body>
        <iframe seamless
                sandbox="allow-same-origin"
                srcdoc="<p>My fav search engine is <a href='http://www.google.com'>Google</a>.">
        </iframe>
    </body>
</html>