将整个文档移动到 iframe 中

2024-02-03

我想做的是将一个完整的网站包装在一个iframe不破坏任何样式或 JavaScript。

这是我尝试过的:

var $frame = $('<iframe />').css({
    position: 'fixed',
    top: 0,
    left: 0,
    width: '100%',
    height: '100%'
}).appendTo('body');

$('head').children().appendTo($frame.contents().find('head'));
$('body').children().not($frame).appendTo($frame.contents().find('body'));

See http://jsfiddle.net/gUJWU/3/ http://jsfiddle.net/gUJWU/3/

这在 Chrome 中运行良好。

Firefox 似乎吞噬了整个页面。

Internet Explorer(请参阅http://jsfiddle.net/gUJWU/3/show/ http://jsfiddle.net/gUJWU/3/show/)确实创建了iframe,不会将任何东西移入其中。

这种方法有可能跨浏览器工作吗?


在 IE 中,文档不会被推断和自动创建,因此您需要在访问它之前实际创建它:

var $frame = $('<iframe />').css({
    position: 'fixed',
    top: 0,
    left: 0,
    width: '100%',
    height: '100%'
}).appendTo('body');

var doc = $frame[0].contentDocument || $frame[0].contentWindow.document;
doc.open();
doc.write("<!DOCTYPE html><html><head><title></title></head><body></body></html>");
doc.close();

$('head').children().appendTo($frame.contents().find('head'));
$('body').children().not($frame).appendTo($frame.contents().find('body'));

DEMO: http://jsfiddle.net/XAMTc/show/ http://jsfiddle.net/XAMTc/show/

这似乎至少在 IE8/9 以及最近的 Firefox 和 Chrome 中有效。

我解决问题的方法是console.logging $frame.contents().find('head').length,在 IE 中为 0。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将整个文档移动到 iframe 中 的相关文章

随机推荐

  • 路线变更转场效果

    我想知道你们中是否有人在Angular2中实现了Router过渡效果 我想主要使用CSS 到目前为止 我已经摆脱了不需要的状态 并在我的视图中添加了一些 CSS 技巧 以欺骗用户存在状态更改 但这种方法不会让我有任何结果 我具体寻找的是重叠
  • 在 Go 中将 UTC 转换为“本地”时间

    如何将 UTC 时间转换为当地时间 我已经为我需要当地时间的所有国家 地区创建了一张具有 UTC 差异的地图 然后 我将该差异作为持续时间添加到当前时间 UTC 中 并打印结果 希望这是该特定国家 地区的当地时间 由于某些原因 结果是错误的
  • msbuild 无法发布的项目

    我有一个 vbproj 它是一个 VB NET Web 应用程序项目 我可以构建包含该项目的解决方案 然后右键单击该项目并在本地发布 VS 2013 专业更新 3 没有问题 我正在尝试构建这个解决方案 然后使用 Jenkins CI 中的
  • 高性能应用程序中的 C/C++ 与 Java/C#

    我的问题是关于 Java 与编译代码的性能对比 例如高性能数值应用程序中的 C fortran 汇编 我知道这是一个有争议的话题 但我正在寻找具体的答案 示例 还有社区维基 我以前曾问过类似的问题 但我认为我提出的问题很宽泛 但没有得到我想
  • 如何将 shell 脚本移植到 Perl?

    这是一个 shell 脚本 我如何在 Perl 中完成同样的事情 prfile sqllib db2profile profile if f prfile prfile then prfile else read p Enter a val
  • 如何在移动视图中显示输入类型数字的向上/向下箭头?

    对于输入类型数字 可以轻松显示 Web 视图中输入框右侧的向上 向下箭头 我还阻止了输入的默认输入 因此您被迫使用箭头来增加 减少数字 但箭头不会显示在移动视图中 有没有什么方法可以强制移动视图中的箭头 以便用户不会输入数字而是使用增量 减
  • AdMob 广告未在 iOS 中展示

    过去几天 iOS 版本没有展示 AdMob 广告 它曾经有效 我没有改变任何东西 iOS 9 3 5 IDE NetBeans 8 0 2 CodenameOne 插件 3 5 2 操作系统 Windows 7 Google 弃用了旧的 a
  • 当它说将 crossdomain.xml 放在根目录中时,它会在 IIS 上的什么位置?

    是 wwwroot C 托管资产的根虚拟目录 还是资产所在的同一文件夹 意思是 如果我有一个虚拟目录 virdir 和一个子目录 swf 它实际上就像 C somedir assets swf 那么 crossdomain xml 需要放在
  • Visual C++:checked_array_iterator 有什么用?

    关于编译代码4 级警告 W4 I get C4996 http msdn microsoft com en us library ttcz0bys aspx警告std copy 参数为 C 数组 不是向量等 STL 容器 的调用 解决此问题
  • 谷歌如何通过两步验证识别“可信设备”

    假设您已注册您的设备 当您返回网站时 它使用哪些信息来验证您是否在该设备上 它是否在您的计算机上存储某些内容 例如 cookie 或者是否使用其他算法来确定您从何处登录 它存储有关您与服务器对话的各种信息 SSL cookie 会话数据 例
  • 如何使用 HTML5 Geolocation API 实现承诺?

    我怎样才能更正下面的代码 使其不返回undefined的值getPreciseLocation功能 总之 当用户点击时 应该有一个 AJAX 调用来获取当前天气 precise location prompt并与浏览器共享位置 然而目前有一
  • 为什么“NOT IN”在这个 NSPredicate 中不起作用?

    A b and B a是逆多关系 为什么这个谓词是A work NSPredicate predicate NSPredicate predicateWithFormat NOT SELF IN bObject a 而这个则没有 NSPre
  • 如何在 websocket python 中发送“标头”

    我怎样才能做到这一点 这是我的代码 import websockets async def test async with websockets connect ws iqoption com as websocket response a
  • 在浏览器之外使用 Websockets 有什么充分的理由吗?

    Websocket 专为浏览器中的快速双向通信而设计 假设您可以控制服务器和本机客户端 例如 iOS 或 Mac 应用程序 是否有任何充分的理由或情况可以通过 Websocket 进行通信而不是使用 HTTP 库 我将回答几个不同的问题 希
  • tableview图像内容选择颜色

    我的应用程序有一个带有图像和文本字段的表格视图 image 图像渲染为模板图像 浅灰色 文本字段 文本颜色黑色 如果我选择一行 两者的颜色都会完美地变为白色 问题 我将图像更改为蓝色图像 默认渲染 如果我现在选择一行 文本字段的文本颜色将更
  • 在 fp-ts 的管道中混合 Either 和 TaskEither

    当没有一个函数是异步的时 我有以下程序可以正常工作 interface Product count number pricePerItem number interface Tax tax number interface Delivery
  • UITableView 上的动画 reloadData

    你会怎样动漫 reloadData on UITableView 数据源已开启UIFetchedResultsController所以我不能玩 insertSections withRowAnimation deleteSections w
  • 从 UITableView 中的 URL 加载图像速度缓慢。

    我正在从 UITableView 中的 URL 加载图像 但加载视图时速度非常慢 这是一个例子 UIImage image nil image UIImage imageWithData NSData dataWithContentsOfU
  • asp.net c# 中是否有等效的 echo

    我有一个 php 代码 我已将其转换为 asp net 代码 PHP 代码只是回显客户端读取和解释的响应 但是在 asp net 中 生成的输出被迫采用 html 格式 这正是因为我使用 asp net 标签来打印输出 有没有一种方法可以实
  • 将整个文档移动到 iframe 中

    我想做的是将一个完整的网站包装在一个iframe不破坏任何样式或 JavaScript 这是我尝试过的 var frame css position fixed top 0 left 0 width 100 height 100 appen