更新:我的目的似乎不需要 iframe。似乎jQuery/JavaScript:访问 iframe 的内容也回答了我的问题。
我已经对此尝试了几种变体,但它拒绝做任何事情。有时我得到一个空的 iframe,有时我什么也得不到。
我有一个 id 为“contents”的元素,它是 body 的直接子元素。我希望在正文中创建一个新的 iframe,并将“内容”及其所有子项移动到 iframe 中,同时在上下文中保留 dom 层次结构。
我目前的尝试是:
frame = $("<iframe frameborder=\"1\" height=\"100%\">");
frame.appendTo("body");
$("#contents").detach().prependTo($("body", frame));
但这只是将“内容”抹去。在没有“分离”的情况下进行操作会使“内容”保持不变。从 prependTo 中删除“正文”选择器会再次删除“内容”,而不会出现在 iframe 中。
编辑:似乎有些东西根本上是错误的,如下所示的更简单的代码也失败了:
frame = $("<iframe frameborder=\"1\" height=\"100%\">");
frame.appendTo("body");
$("<b>text</b>").appendTo(frame);