我在网站上显示了一个iframe。我想要做的是在我的网站上显示iframe,但是当用户正在查看它时,他们将不会意识到它是一个iframe。现在,当您“右键单击”iframe时,它会显示“查看帧源”。有没有办法摆脱它,所以用户只会认为iframe是网站的一部分,而不是iframe?
提前感谢您的帮助。
答案 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之间的通信。