JQuery - 如何在基于WebKit的浏览器(chrome/safari)中将对象追加到iframe?

Tom*_*omT 2 iframe jquery webkit append

我有这个代码:

  <script type="text/javascript">
    $(document).ready(function() {
        $("#iframeId").contents().find("body").append($("#test"));
    });
  </script>
  <iframe id="iframeId" name="iframeId" src="about:blank" ></iframe>
  <div id="test">
     Text
  </div>
Run Code Online (Sandbox Code Playgroud)

我需要将整个对象追加到iframe(不仅仅是html()).它适用于IE,Firefox和Opera,但我不能在Chrome/Safari中使用它.有没有hack或其他方法,如何将html对象放入iframe,使用WebKit?

编辑

我无法克隆该对象(或使用其内部Html),因为我需要使用它与文件输入,我不能复制它由于安全限制.

and*_*lzo 7

outerHTML.这个例子工作正常:

jQuery.fn.outerHTML = function() {
    return $('<div>').append( this.eq(0).clone() ).html();
};

$("#iframeId").contents().find("body").html($("#test").outerHTML());
$("#test").remove();
Run Code Online (Sandbox Code Playgroud)

- 编辑

  <script type="text/javascript">
    $(document).ready(function() {
     $("#iframeId").contents().find("body").html($("<div></div>").append($("#test")).html());
    });
  </script>
  <iframe id="iframeId" name="iframeId" src="about:blank" ></iframe>
  <div id="test">
     Text
  </div>
Run Code Online (Sandbox Code Playgroud)

--EDIT II

$("#iframeLast").contents().find("body").append($("<form></form>").append($("#inputLast")));
Run Code Online (Sandbox Code Playgroud)