使iframe不可见

使iframe不可见,iframe,Iframe,我有一个iframe正在网站上显示。我想做的是在我的网站上显示iframe,但这样做是为了当用户看到它时,他们不会意识到它是一个iframe。现在,当您“右键单击”iframe时,它会显示“图幅源”。有没有办法摆脱这个问题,这样用户就会认为iframe是网站的一部分,而不是iframe 提前感谢您的帮助。 <iframe width="700" scrolling="no" height="400" frameborder="0" src="yourFramePage.html" seam

我有一个iframe正在网站上显示。我想做的是在我的网站上显示iframe,但这样做是为了当用户看到它时,他们不会意识到它是一个iframe。现在,当您“右键单击”iframe时,它会显示“图幅源”。有没有办法摆脱这个问题,这样用户就会认为iframe是网站的一部分,而不是iframe

提前感谢您的帮助。


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

您可以绑定到右键单击并阻止默认操作。要实现相同的功能,请签出。但是,只有在iframe中控制html页面时,这才是可行的

一个可行的替代方案我所知道的唯一替代方案是iframe(新添加的HTML5)中的
无缝
属性,它在浏览器中不受一致支持。(当前浏览器支持仅限于chrome)

对于其他浏览器,您可以执行以下操作:


iframe[seamless]{
    background-color: transparent;
    border: 0px none transparent;
    padding: 0px;
    overflow: hidden;
}
无论如何,没有完整的解决方案,因为html的源代码始终可供最终用户使用。如果可能,请尝试使用ajax重新实现您的解决方案。如果您在自己的站点中显示第三方站点内容,那么我强烈建议您不要掩饰这些区别,使内容看起来是您站点的一部分

[更新]


如果您确实有令人信服的理由使用iFrame,那么Discus评论平台的创建者提供了一种深入的方法来模拟无缝iFrame。演示的重点是使用
window.postMessage
来实现父html文档和iframe之间的通信。

这不是跨浏览器的:无缝属性仅受Chrome支持。因此在其他浏览器中,它仍将具有图幅源代码,但不是边界之类的。我想这是他能接近的。当它归结到它,用户可能有firebug和看到的代码不管。+1是的,这绝对是最好的反应。我只是觉得说它不是跨浏览器是个好主意。如果只有一个Chrome解决方案,它怎么可能是最好的响应呢?