首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Google DFP中刷新广告

在Google DFP中刷新广告
EN

Stack Overflow用户
提问于 2015-07-15 02:26:03
回答 1查看 832关注 0票数 0

按照其站点上的说明进行操作时出现DFP刷新问题。

我已经尝试了这里看到的另一种方法:Refresh DFP ads,但没有任何运气。

我有一个插件,我们创建了一个插件,将广告单元插入到窗口小部件中,它工作得很好。尝试更新它以刷新广告,但不会刷新任何内容。当我尝试手动添加刷新广告的按钮进行测试时,它会使广告完全消失。

下面是头部的代码:

代码语言:javascript
复制
    <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.defineSlot('/5251611/db_archive_leaderboard_728x90_1', [728, 90], 'div-gpt-ad-1436890018007-0').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_leaderboard_728x90_1', [728, 90], 'div-gpt-ad-1436890018007-1').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_leaderboard_728x90_2', [728, 90], 'div-gpt-ad-1436890018007-2').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_1', [300, 250], 'div-gpt-ad-1436890018007-3').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_2', [300, 250], 'div-gpt-ad-1436890018007-4').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_3', [300, 250], 'div-gpt-ad-1436890018007-5').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_4', [300, 250], 'div-gpt-ad-1436890018007-6').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_5', [300, 250], 'div-gpt-ad-1436890018007-7').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_med_rect_300x250_6', [300, 250], 'div-gpt-ad-1436890018007-8').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_frontpage_pencil_975x50', [975, 50], 'div-gpt-ad-1436890018007-9').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_half_page_300x600', [300, 600], 'div-gpt-ad-1436890018007-10').addService(googletag.pubads());
    googletag.defineSlot('/5251611/db_posts_leaderboard_728x90_1', [728, 90], 'div-gpt-ad-1436890018007-11').addService(googletag.pubads());
    googletag.pubads().enableSingleRequest();
    googletag.enableServices();
  });
</script>

这是一个广告插件代码的示例:

代码语言:javascript
复制
 <!-- /5251611/db_half_page_300x600 -->
    <div id='div-gpt-ad-1436890018007-10' style='height:600px; width:300px; padding:10px 0px 10px 10px;'>
 <script type="text/javascript">  
        googletag.cmd.push(function() {
        var slot10 = googletag.defineSlot("/5251611/db_half_page_300x600", [300, 600],
        "div-gpt-ad-1436890018007-10").addService(googletag.pubads());
        googletag.enableServices();
        googletag.display("div-gpt-ad-1436890018007-10");
    setInterval(function(){googletag.pubads().refresh([slot10]);}, 30000);       
        });
      </script> 
</div>

上面的广告代码对于10个广告位是相同的,但每个广告位中的广告位编号都不同。这里我漏掉了什么?无法使其在30秒后刷新。

EN

回答 1

Stack Overflow用户

发布于 2015-10-04 04:29:29

控制台是正确的。setInterval函数无法识别slot10,因为它超出了其作用域。

您应该编写代码,以便setInterval能够实际访问slot10。也许你应该把slot10作为你的setInterval函数的一个变量来传递?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31414452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档