ブラウザのサイズに応じてバナーを読み込もうとしています。したがって、728x90のバナーがある場所では、モバイルの場合は300x250が表示されます。DoubleClick for Publishers:ブラウザと広告のサイズを指定する
問題は、728x90がデスクトップに読み込まれるという問題です。モバイルでは300x250は表示されません。
私は一例にhere
<script type='text/javascript'>
googletag.cmd.push(function() {
// This mapping will only display ads when user is on desktop sized viewport
var mapLeader = googletag.sizeMapping().
addSize([0, 0], []).
addSize([768, 200], [728, 90]).
build();
// This mapping will only display ads when user is on mobile or tablet sized viewport
var mapLeader2 = googletag.sizeMapping().
addSize([0, 0], []).
addSize([768, 200], []). // Desktop
addSize([300, 200], [300, 250]). // Tablet
build();
window.LeaderSlot= googletag.defineSlot('/XXXXXXX/leaderboard-1', [728, 90], 'div-gpt-ad-1455251022145-0').
defineSizeMapping(mapLeader).
setCollapseEmptyDiv(true).
addService(googletag.pubads());
window.LeaderSlot= googletag.defineSlot('/XXXXXXX/medium-rectangle-1', [300, 250], 'div-gpt-ad-1458546777123-0').
defineSizeMapping(mapLeader2).
setCollapseEmptyDiv(true).
addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.pubads().enableSyncRendering();
// Start ad fetching
googletag.enableServices();
});
</script>
と私の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>
を以下しようとした私は、同じ場所に各サイズのため<div>
を入れなければならないのですか? 300x250のバナーを読み込むにはどうすればよいですか? 728x90はうまく動作します。 CSSを使ってブラウザのサイズに合わせて表示/非表示を切り替えることができます。しかし、私はそれをしたくありません。複数のサイズを同じ場所に読み込むと、サイトの読み込みが遅くなります。
おそらく、 'window.LeaderSlot'と何か関係がありますか?この例では配列ですが、ここでは置換する変数は1つだけです。 – jolmos