googletag.defineSlot
是否可以仅在页面上存在对应项时动态定义 a div-x
?目前使用此方法通过 Google Tag Manager 定义。我们在不存在广告单元的不同页面上收到这些错误:
在单请求模式下,调用 googletag.defineSlot 的次数超过了 DOM 中与广告位关联的 DIV 的次数。这将影响展示次数
定义广告位并推送展示
<script>
googletag.cmd.push(function() {
googletag.defineSlot('/101030411/AC-LDB-3', sizesldb, 'div-4')
.addService(googletag.pubads());
googletag.pubads().collapseEmptyDivs();
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
var adunits = document.querySelectorAll('div[id^="div-"]');
for (var i = 0; i < adunits.length; i++) { googletag.cmd.push(function() {
googletag.display(adunits[i].getAttribute('id')); }); }
</script>
页面上的div:
<div style="text-align: center" id='div-x'></div>
预期的操作是仅当与声明的插槽匹配的 div-x 在当前页面上时才定义插槽。