从这个问题的建议开始,我做了一些搜索,在这个网站上找到了一些代码,旨在在页面加载后将Google Adsense 广告插入我网页上的特定位置。就我而言,我在 Javascript 中进行了一些检查,将 JSON 数据发送回我的服务器,然后根据从该 JSON 获得的响应,我决定是否显示 Google Adsense 广告。
由于我是从网上得到这段代码,并不是我自己写的,所以有很多我没有得到,在某些地方我不得不根据我认为需要的内容填写详细信息,但我在猜测一点点。这就是我当前使用的代码的外观:
if(userStatus.status == 0)
{
console.log("google ad should show");
window["google_ad_client"] = 'ca-pub-0000000000000000';
window["google_ad_slot"] = "0000000000";
window["google_ad_width"] = 320;
window["google_ad_height"] = 50;
window.adcontainer = document.getElementById('google-ad');
window.adhtml = '';
function mywrite(html)
{
adhtml += html;
if(html == '</iframe>')
{
adcontainer.innerHTML = adhtml;
}
};
document.write_ = document.write;
document.write = mywrite;
script = document.createElement('script');
script.src='http://pagead2.googlesyndication.com/pagead/show_ads.js';
script.type='text/javascript';
document.body.appendChild(script);
}
似乎它几乎可以工作了。
当我在启用了 Firebug 的 Firefox 中查看我的页面时,我看到我的控制台日志消息正在显示,所以我知道我已经通过了所有条件。
我还尝试使用直接写入 HTML 的代码来运行广告,以确认 Google 已接受我的网站并且他们将展示广告。当我这样做时,广告显示正常,所以我相信我的 Asense 帐户没有问题。
但是,虽然调用http://pagead2.googlesyndication.com/pagead/show_ads.js
被附加到页面末尾,但广告参数似乎并未按预期写入google-ad
DIV。
因此,广告没有显示。
我的代码哪里出错了?