1

如果有人知道,我想做这样没有人可以将我的 iWeb 站点放在 iframe 中?如何让我的页面自动脱离 iframe?

4

2 回答 2

2

这个答案也适用于这个问题:

如果将这段代码放在被iframe. 它的工作方式是查看(您请求的页面top包括iframe)和. 如果有不同,那么它会更改 top.location 以匹配.selfiframeiframe

这是一些帮助理解这一点的 ASCII

|----[OuterPage.html]------|
|                          |
|    |--[InnerPage.html]-| |
|    |                   | |
|    | top !== self      | |
|    |                   | |
|    |-------------------| |
|                          |
| top === self             |
|                          |
|--------------------------|

如果您单独请求 InnerPage.html(不在 iframe 中),则top === self评估结果为 true,但是如果您在 iframe 中请求相同页面,则相同条件将评估为 false。

于 2013-01-23T17:30:57.140 回答
1

这里X-Frame-Origin指定了一个 http 标头,您可以将其放入服务器响应中,如果设置为 ,它将完全阻止浏览器呈现 iframe 。SAMEORIGIN

然而,它是一个依赖于浏览器的解决方案(因为浏览器必须支持标头以尊重其值),但比 JS 诡计 IMO 更好。

于 2013-07-05T19:10:36.800 回答