jquery检查iframe是否在视口中

时间:2014-07-03 01:36:40

标签: jquery iframe viewport

有没有办法检查 FROM WITHIN iframe,iframe中的页面是否在第三方父级浏览器视口中?

例如,在此示例中,答案为否,因为iframe中的内容位于视口之外。

<body>
<div style="position: fixed; left: -1000px;">
<iframe id="iframeID" width="200" height="200" src="http://domainNotSameAsParent.com"></iframe>
</div>          
</body>

1 个答案:

答案 0 :(得分:0)

我猜测基于“http:// domainNotSameAsParent .com”,iframe内容和主页面不是来自同一个来源。这显然会导致Same Origin Policy出现问题。

  

相同的原始策略会阻止从一个文档或脚本加载的文档或脚本   来自获取或设置文档属性的来源   起源。此政策可以追溯到Netscape Navigator 2.0。

基本上,如果iframe内容与页面的来源不同,您可能无法检查iframe是否在视口中。

如果您真的决定这样做并且您可以访问这两个域,则可能需要检查:
Ways to circumvent the same-origin policy

但它可能会花费更多的时间和精力,而不是你真正想花在这样的事情上。