使iframe不可见

时间:2013-01-07 19:06:51

标签: iframe

我在网站上显示了一个iframe。我想要做的是在我的网站上显示iframe,但是当用户正在查看它时,他们将不会意识到它是一个iframe。现在,当您“右键单击”iframe时,它会显示“查看帧源”。有没有办法摆脱它,所以用户只会认为iframe是网站的一部分,而不是iframe?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:7)

<iframe width="700" scrolling="no" height="400" frameborder="0" src="yourFramePage.html" seamless="seamless">

答案 1 :(得分:4)

您可以绑定到右键单击并阻止默认操作。为了实现相同的结果,请结帐this question。但是,如果您可以控制iframe中的html页面,这只是可行的。

一个可行的替代我知道的唯一选择是iframe中的seamless属性(新的HTML5添加),这在浏览器中并不是一致的。 (目前的浏览器支持仅限于chrome)。

对于其他浏览器,您可以做一些肤浅的事情,如:


iframe[seamless]{
    background-color: transparent;
    border: 0px none transparent;
    padding: 0px;
    overflow: hidden;
}

无论如何,没有完全证明的解决方案,因为html的源始终可供最终用户使用。如果可能,请尝试使用ajax重新实现您的解决方案。如果您在自己的网站上显示第三方网站内容,那么我强烈建议不要伪装这种区别,以便内容看起来是您网站的一部分。

[更新]

如果你确实有令人信服的理由使用iframe,那么disqus评论平台的创建者this presentation会提供一种有效的方法来模拟无缝的iframe。演示文稿的重点是使用window.postMessage来启用父html文档和iframe之间的通信。