Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 双击发布者:指定浏览器和广告尺寸_Javascript_Adsense_Google Dfp_Google Ad Manager_Gpt - Fatal编程技术网

Javascript 双击发布者:指定浏览器和广告尺寸

Javascript 双击发布者:指定浏览器和广告尺寸,javascript,adsense,google-dfp,google-ad-manager,gpt,Javascript,Adsense,Google Dfp,Google Ad Manager,Gpt,我正在尝试根据浏览器大小加载横幅。因此,在我有728x90横幅的位置,300x250将显示其是否在移动设备上 问题是,728x90在桌面上加载。但在手机上,300x250没有显示 我试着仿效这个例子 googletag.cmd.push(函数(){ //此映射仅在用户位于桌面大小的视口时显示广告 var mapLeader=googletag.sizeMapping()。 addSize([0,0],])。 addSize([768200],[72890])。 build(); //此映射仅在

我正在尝试根据浏览器大小加载横幅。因此,在我有728x90横幅的位置,300x250将显示其是否在移动设备上

问题是,728x90在桌面上加载。但在手机上,300x250没有显示

我试着仿效这个例子


googletag.cmd.push(函数(){
//此映射仅在用户位于桌面大小的视口时显示广告
var mapLeader=googletag.sizeMapping()。
addSize([0,0],])。
addSize([768200],[72890])。
build();
//此映射仅在用户处于移动或平板电脑大小的视口中时显示广告
var mapLeader2=googletag.sizeMapping()。
addSize([0,0],])。
addSize([768200],])。//桌面
addSize([300200],[300250])//平板电脑
build();
window.LeaderSlot=googletag.defineSlot(“/XXXXXXX/leadboard-1”,[728,90],“div-gpt-ad-1455251022145-0”)。
定义映射(mapLeader)。
设置collapseemptydiv(真)。
addService(googletag.pubads());
window.LeaderSlot=googletag.defineSlot(“/XXXXXXX/medium-rectangle-1”,[300250],“div-gpt-ad-1458546777123-0”)。
定义映射(Mapleader 2)。
设置collapseemptydiv(真)。
addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.pubads().enableSyncRendering();
//启动广告抓取
googletag.enableServices();
});
在我的HTML中

<!-- /XXXXXX/leaderboard-1 -->
<div id='div-gpt-ad-1455251022145-0' style='height:90px; width:728px;' class="center">
    <script type='text/javascript'>
        googletag.cmd.push(function() { googletag.display('div-gpt-ad-1455251022145-0'); });
    </script>
</div>
<!-- /XXXXXX/medium-rectangle-1 -->
<div id='div-gpt-ad-1458546777123-0' style='height:250px; width:300px;'>
    <script type='text/javascript'>
    googletag.cmd.push(function() { googletag.display('div-gpt-ad-1458546777123-0'); });
    </script>
</div>

googletag.cmd.push(函数(){googletag.display('div-gpt-ad-1455251022145-0');});
googletag.cmd.push(函数(){googletag.display('div-gpt-ad-1458546777123-0');});

我是否必须将每个尺码的
放在同一位置?如何装载300x250横幅?728x90工作正常。我知道我可以使用CSS根据浏览器大小隐藏/显示。但我不想那样做。在同一位置加载多个大小的文件会降低我的网站加载速度。

我真的没有机会保存您提供的示例,所以我创建了一个示例,它非常适合我。我会在下面解释一下

 <html>
      <head>
        <title>Async Responsive</title>
        <script async src="http://www.googletagservices.com/tag/js/gpt.js">
        </script>
        <script>
          googletag = window.googletag || {cmd:[]};
          googletag.cmd.push(function() {

            var sizeMapping = googletag.sizeMapping().
                addSize([1024, 768], [970, 250]). // Screens of any size smaller than infinite but bigger than 1024 x 768
                addSize([980, 690],  [728, 90]).  // Screens of any size smaller than 1024x 768 but bigger than 980 x 690
                addSize([640, 480],  [120, 60]).  // Screens of any size smaller than 980 x 690 but bigger than 640 x 480
                addSize([0, 0],      [88, 31]).   // Screens of any size smaller than 640 X 480 but bigger than 0 x 0

                build();

            googletag.defineSlot(
                '/XXXXXX/ad-unit-inside-dfp/level2/level3', [320, 50], 'div-id').
                defineSizeMapping(sizeMapping).
                addService(googletag.pubads());

            googletag.enableServices();
          });
        </script>
      </head>
      <body>
        <h1>user2636556 Testpage</h1>
        <div id="div-id">
          <script>
            googletag.cmd.push(function() { googletag.display('div-id') });
          </script>
        </div>
      </body>
 </html>

如果还有任何问题,请告诉我。

您不需要
style='height:90px;宽度:728px;'因为您希望DFP根据屏幕大小加载适当的横幅

<!-- /XXXXXX/leaderboard-1 -->
<div id='div-gpt-ad-1455251022145-0' style='height:90px; width:728px;' class="center">
    <script type='text/javascript'>
        googletag.cmd.push(function() { googletag.display('div-gpt-ad-1455251022145-0'); });
    </script>
</div>

googletag.cmd.push(函数(){googletag.display('div-gpt-ad-1455251022145-0');});

当您使用不同的屏幕尺寸在浏览器上测试时,请记住横幅不会自动调整大小。您必须刷新页面才能看到更改。

可能与
窗口有关。LeaderSlot
?在本例中,是一个数组,这里只有一个要替换的变量。
googletag.pubads().refresh();
<!-- /XXXXXX/leaderboard-1 -->
<div id='div-gpt-ad-1455251022145-0' style='height:90px; width:728px;' class="center">
    <script type='text/javascript'>
        googletag.cmd.push(function() { googletag.display('div-gpt-ad-1455251022145-0'); });
    </script>
</div>