我需要知道我的google adsense广告(在div id =" bottomAd")已加载。
我试着等了5秒,解析div,然后得到所有" a":
function OnBodyLoad() {
setTimeout(function () {
var bottomAd = document.getElementById("bottomAd");
var linkArray = bottomAd.getElementsByTagName("a");//it's always empty
}, 5000);
}
现在正在工作。
使用拥有自己身体的iframe加载Adsense。那么如何获得所有" a"元件?或者其他方式知道adsense广告已加载?
由于私人政策(阻止了XSS攻击),我无法加载iframe内容。因此,下一个代码并不值得:
var array = new Array();
findIframeLinks(bottomAd, "a", array);
...
function findIframeLinks(element, returnElementTagName, array) {
array.push(element.getElementsByTagName(returnElementTagName));
var innerIframes = element.getElementsByTagName("iframe");
for (var i = 0; i < innerIframes.length; i++) {
if (innerIframes[i].contentDocument) {
var body = innerIframes[i].contentDocument.getElementsByTagName('body')[0];
findIframeLinks(body, returnElementTagName, array);
}
}
}
答案 0 :(得分:-1)
我以前从未使用谷歌的AdSense,但我怀疑会有一些事件你可以订阅,以告诉是否有事情发生。
我代表您做了一些研究,发现这个文档特别有用,我认为您正在寻找的事件是ADS_LOADED事件。只需在
以下是文档建议的示例代码。
adsLoader.addEventListener(AdsLoadedEvent.ADS_LOADED, onAdsLoaded);