【发布时间】:2016-10-26 03:22:46
【问题描述】:
在 DFP 广告管理系统标准版/DoubleClick 中,我为具有三种不同尺寸的广告单元生成了以下广告代码,并为每种指定尺寸生成了一个广告素材。因此,广告单元有三种不同的尺寸,当您点击刷新时,广告会变为我指定的三种广告尺寸之一。这很好用,但它不是我想要的广告做的,
我希望广告这样做:
我希望广告根据浏览器宽度更改尺寸,例如,如果观众浏览器宽度大于 800 像素,则以最大指定尺寸显示广告,如果浏览器宽度在 600-800 之间,则使用广告的第二大指定尺寸,最后,如果广告小于 600 像素,则使用最小的广告尺寸......广告应根据浏览器宽度的变化相应地改变尺寸。 800、600-800 和小于 600 不是实际尺寸,只是示例尺寸,但无论如何这三种广告尺寸都在此行中指定:
googletag.defineSlot('/16569348/Different-Sizes-Unit-Test', [[292, 195], [310, 207], [345, 230]], 'div-gpt-ad-1363309773051-0').addService(googletag.pubads());
这里是完整的代码:
<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('/16569348/Different-Sizes-Unit-Test', [[292, 195], [310, 207], [345, 230]], 'div-gpt-ad-1363309773051-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>
<!-- Different-Sizes-Unit-Test -->
<div id='div-gpt-ad-1363309773051-0'>
<script type='text/javascript'>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1363309773051-0'); });
</script>
`
这是此代码的 jsfiddle(点击运行或刷新以查看广告随机更改大小):
同样,我希望广告根据浏览器宽度大小/变化相应地更改尺寸。如果有人能帮助我想出一个实现这一目标的方法,那对我来说真的意义重大! :)
【问题讨论】:
-
当我尝试加载该 jsfiddle 时,我在结果窗口中看不到任何内容。加载 Google JS 文件的请求失败。出于 SO 的目的,通常最好重新表述问题并消除加载任何外部依赖项的需要(除非它们本身就是有问题的问题)。基本上,将问题减少到其核心元素并在 jsfiddle 中对其进行模拟。在任何情况下,您都应该能够通过根据浏览器大小有选择地向广告容器添加/删除类并让这些 CSS 类定义不同的宽度来做到这一点。
-
@RubenInfante 嘿,Ruben,广告现在应该显示了...stackoverflow.com/questions/15452905/… 里面有一个 jsfiddle!但是关于 DFP(谷歌广告)的问题是所有广告都在 iframe 中,因此您不能直接在 iframe 中操作图像。您必须为您想要的每种尺寸的广告上传图片。我坚持的部分是为不同的浏览器宽度加载给定的谷歌代码,我在问题中解释了更多,但感谢到目前为止的帮助,这意味着很多..我需要做的就是得到这个小东西工作:)
标签: javascript jquery google-dfp