【问题标题】:How to detect the visibility of a cross-domain Iframe?如何检测跨域 iframe 的可见性?
【发布时间】:2012-10-05 11:52:18
【问题描述】:

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

【问题讨论】:

    标签: iframe cross-domain ads


    【解决方案1】:

    这个问题已经很老了,所以您现在可能已经有了答案,但请参阅下面的一些计算 x 域 iframe 可见性的方法。

    在支持 Flash 并优化刷新率的浏览器中,如果 Flash 对象在屏幕上或在屏幕外,您可以将 Flash 像素放置在 iframe 的关键区域并测量刷新率以计算 iframe 的可见程度。

    在 IE8+(不优化 Flash 刷新率)中,您可以使用类似的检测方法,在相同的战略位置使用 document.elementFromPoint 来检测可见性。因此只能在 IE 中工作,但是因为所有其他浏览器在 x 域 iframe 中返回值而不考虑视口。

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

    我不会更详细地介绍(因为在移动设备上太费力了),但它们是目前的三种主要方式。

    将来,新的 IntersectionObserver 将出现在 Chrome 的下一版本中,因此有望在 Flash 最终尘埃落定之前普遍可用。

    【讨论】:

      【解决方案2】:

      很容易,通过标记 iframe。 没有什么“可专利的”。

      您可以在 iframe 上设置一个 1 像素的 GIF“标签”或使用所谓的“软标签”,这可以顺便跟踪任何页面的任何元素,而不仅仅是独立于嵌入页面的 iframe。 使用的代码是内联javascript。

      但我不确定此功能是否在 comScore 的 DaX 平台之外可用。您可以随时联系他们的支持部门。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-10
        • 2012-12-08
        • 2015-03-05
        • 2011-10-05
        • 1970-01-01
        • 1970-01-01
        • 2011-01-22
        • 1970-01-01
        相关资源
        最近更新 更多