Я пытаюсь выяснить, сколько слотов отрисовано с контентом. Если слот успешно обработан, я хочу запустить трекер, чтобы сообщить Google Analytics, что реклама успешно загружена. Рекламные объявления, которые я показываю, были добавлены в мои собственные div с идентификаторами.
Я могу измерить высоту всех рекламных блоков. Основываясь на этом, я могу видеть, отреагировали ли рекламные объявления. Я могу записать в консоль количество пустых рекламных мест и т. Д. Однако я обнаружил, что эта функция должна выполняться очень часто в setInterval, потому что она отказывается ждать загрузки рекламы в window.onload. Если бы я поместил трекеры внутри этой функции, они бы запускались снова и снова, когда мне нужно, чтобы они выполнялись только один раз. Любая помощь приветствуется. Большое спасибо.
// Header script
googletag.defineSlot(
"...",
[[970, 90], [300, 250], [728, 90]],
"..."
)
.addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.pubads().collapseEmptyDivs();
});
googletag.enableServices();
// jquery functionality
function hideEmptyBanner() {
$(elements).each(function() {
height = $(this).height();
if (height < 10) {
$(this).hide();
}
});
}
setInterval(function() {
checkHeightOfBanner();
}, 2000);