如何检测跨域Iframe的可见性?

mba*_*hau 3 iframe ads cross-domain

有些公司声称能够在不访问嵌入页面的情况下检测iframe的可见性.我找到的两个是spider.iocomscore,两者都说他们的技术正在申请专利.他们可能会这样做的任何想法?

小智 5

这个问题真的很旧,所以你现在可能已经有了答案,但请参阅下面的一些方法来计算x-domain iframe可见性.

在支持Flash并优化刷新率的浏览器中,如果Flash对象处于打开状态与屏幕外,您可以将闪存像素放置在iframe的战略区域,并测量刷新率以计算iframe的可见范围.

在IE8 +(不优化闪存刷新率)中,您可以通过在相同的战略位置使用document.elementFromPoint来检测可见性,从而运行类似的检测方法.因此,仅在IE中可以使用,因为所有其他浏览器都在x-domain iframe中返回值而不将视口考虑在内.

在FF中有window.mozInnerScreenY/X属性,可用于帮助计算可见性.

我不会进一步详细说明(因为它在移动设备上的工作量太大),但它们是目前实现这一目标的三种主要方式.

将来,新的IntersectionObserver将会出现在Chrome的下一个版本中,因此希望在Flash最终蚕食之前能够普遍使用.