将iframe放在HTML5中的canvas元素中

时间:2012-03-28 08:15:53

标签: javascript html5 iframe html5-canvas

我的问题很简单,实际上我想把iframe元素(可以包含视频,网页,图片,pdf等)放在元素上, 它不需要可编辑,只需显示就足够了

1 个答案:

答案 0 :(得分:4)

我不确定您是想在它上面显示它还是将它绘制到画布上。第一种可能是将元素绝对定位在画布上方(如果您想在其上绘制其他内容,则可以在其下方)。第二个是不可能的(除非你在chrome扩展或firefox附加组件中运行,这不是我假设的情况(如果是这种情况,那么在cavnas上下文中函数被称为DrawElement))。有些项目试图手动制作页面的“屏幕截图”(Can you take a "screenshot" of the page using Canvas?),但仍然无法使用pdf文件。 html5视频标签中的视频内容可以类似地手动绘制到画布上,但同样必须手动绘制控件等。

无法将整个元素绘制到画布上的原因是作为安全预防措施,以防止开发人员获取有关外部页面的信息(尽管已经讨论过允许这样做并接受画布将被“污染”意思是没有什么可以从中读取,但是共识是将元素定位在画布下面在这种情况下更有用)。如果您想了解这些安全注意事项,您应该在webkit引擎中查找Bug 69044。