如果仅在我的网站未包含在iFrame中时如何显示adsense?

时间:2013-01-11 15:48:51

标签: javascript jquery facebook adsense

我有一个网站也是Facebook上的画布应用程序。根据FB政策,我无法在画布页面上显示Adsense广告。另外根据谷歌的Adsense政策,我无法在iFrame中显示Adsense,FB使用它将我的网站显示为画布应用。我的网站使用Adsense来货币化。

我需要一个简单的解决方案来呈现我的Adsense广告,只有当我的网站没有作为画布应用程序或任何其他方式。

我尝试使用jquery并执行以下操作

if (window==window.top) {
    $.getScript("show_ads.js");
}

但在任何情况下都不会呈现广告。 show_ads.js是Google提供的Adsense广告呈现脚本。

我正在寻找解决此问题的不同方法。

1 个答案:

答案 0 :(得分:0)

Try

    var isInIframe = (window.parent !=null && window.location != window.parent.location) ? true : false;
        if (!isInIframe )
         loadScript("http://your.cdn.com/show_ads.js");

reference

尝试此操作以加载js文件:

function loadScript(url, callback){

    var script = document.createElement("script")
    script.type = "text/javascript";

    if (script.readyState){  //IE
        script.onreadystatechange = function(){
            if (script.readyState == "loaded" ||
                    script.readyState == "complete"){
                script.onreadystatechange = null;
                callback();
            }
        };
    } else {  //Others
        script.onload = function(){
            callback();
        };
    }

    script.src = url;
    document.getElementsByTagName("head")[0].appendChild(script);
}