gpt4 book ai didi

google-dfp - google dfp pubads().refresh() 没有按预期工作

转载 作者:行者123 更新时间:2023-12-04 00:57:05 26 4
gpt4 key购买 nike

我正在使用 Google DFP 中的一些新功能,但无法单独添加一个来刷新。我可以刷新页面上的所有广告,但我不能只刷新一个广告。

我一直在尝试以下代码来获得一个添加刷新而没有运气:

   var slot1 = googletag.display('/6900315/myad2', [300, 250], 'div-2');
googletag.pubads().refresh([slot1]);

任何帮助,将不胜感激!

完整来源:
<script type='text/javascript'>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
(function () {
var gads = document.createElement('script');
gads.async = true;
gads.type = 'text/javascript';
var useSSL = 'https:' == document.location.protocol;
gads.src = (useSSL ? 'https:' : 'http:') +
'//www.googletagservices.com/tag/js/gpt.js';
var node = document.getElementsByTagName('script')[0];
node.parentNode.insertBefore(gads, node);
})();
</script>


script type='text/javascript'>
googletag.cmd.push(function () {
googletag.pubads().enableAsyncRendering();
googletag.defineSlot("/69003153/myad1", [728, 90], "div-1").addService (googletag.pubads());
googletag.defineSlot("/69003153/myad2", [300, 250], "div-2").addService (googletag.pubads());
googletag.enableServices();
});
</script>
<script type='text/javascript'>
function changeAd() {
googletag.cmd.push(function () {
var slot1 = googletag.display('/6900315/myad2', [300, 250], 'div-2');
googletag.pubads().refresh([slot1]);
//googletag.pubads().refresh();


});
}
</script>
</head>
<body>
<form id="form1" runat="server">


<div id='div-1' style='width:728px; height:90px;'>
<script type='text/javascript'>
googletag.cmd.push(function () { googletag.display('div-1'); });
</script>
</div>


<!-- BoxAdd_Details -->
<div id='div-2' style='width:300px; height:250px;'>
<script type='text/javascript'>
googletag.cmd.push(function () { googletag.display('div-2); });
</script>
</div>

<input type="button" name="test" title="test" onclick="javascript:window.changeAd();" value="Reload Ad" />

最佳答案

我也有同样的问题。我还没有让我的广告刷新,但我建议您不需要在 changeAd() 中重新声明您的广告位。

代替:

googletag.cmd.push(function () {
googletag.pubads().enableAsyncRendering();
googletag.defineSlot("/69003153/myad1", [728, 90], "div-1").addService (googletag.pubads());
googletag.defineSlot("/69003153/myad2", [300, 250], "div-2").addService (googletag.pubads());
googletag.enableServices();
});

尝试:
googletag.cmd.push(function () {
googletag.pubads().enableAsyncRendering();
slot1 = googletag.defineSlot("/69003153/myad1", [728, 90], "div-1").addService (googletag.pubads());
slot2 = googletag.defineSlot("/69003153/myad2", [300, 250], "div-2").addService (googletag.pubads());
googletag.enableServices();
});

声明它们之前没有 'var' 会使插槽在范围内是全局的。在您的 changeAd() 函数中,只需调用
googletag.pubads().refresh([slot1]);

我什至不确定你是否需要把它放在 googletag.cmd.push() 里面

当我以这种方式执行它时,我的广告仍然没有刷新,但是运行 console.log(slot1) 显示广告位是活的并且正在踢......

其他人可以提供进一步帮助吗?

关于google-dfp - google dfp pubads().refresh() 没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8298247/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com