DoubleClick For Publishers(DFP)の広告を使用しています。これはページです: http ://www.ifly.com
ページ読み込みイベントの後にjQueryAJAXを介してDFP広告を読み込み、さまざまな検索ウィジェットをユーザーとのやり取りにできるだけ速く利用できるようにします。プロセスは次のようになります。
最初のDFPヘッダー呼び出しをドキュメントヘッドに配置します。
<head>
...
<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('/9358962/HP-300x250', [300, 250], 'div-gpt-ad-1353002461867-0').addService(googletag.pubads());
googletag.defineSlot('/9358962/HP-460x60', [468, 60], 'div-gpt-ad-1353002461867-1').addService(googletag.pubads());
googletag.defineSlot('/9358962/HP-728x90', [728, 90], 'div-gpt-ad-1353002461867-2').addService(googletag.pubads());
googletag.defineSlot('/9358962/HP-LAF-160x600', [160, 600], 'div-gpt-ad-1353002461867-3').addService(googletag.pubads());
googletag.defineSlot('/9358962/HP-RAF-160x600', [160, 600], 'div-gpt-ad-1353002461867-4').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>
....
</head>
空のdivをプレースホルダーとして作成します。
<div id='horizontalTANBanner'></div>
ページの読み込み後、jQueryAJAXを使用してコードを挿入して広告を取得します。
<div id='horizontalTANBanner'>
<!-- HP-728x90 -->
<div id='div-gpt-ad-1353002461867-2' style='width:728px; height:90px;'>
<script type='text/javascript'>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1353002461867-2'); });
</script>
</div>
</div>
Googleは、実際に広告を呼び出すためにさらに多くのJavaScriptをロードします。Firebugを使用して挿入されていることがわかります。
<div id="horizontalTANBanner">
<div id="div-gpt-ad-1353002461867-2" style="width:728px; height:90px;">
<iframe id="google_ads_iframe_/9358962/HP-728x90_0" width="728" scrolling="no" height="90" frameborder="0" name="google_ads_iframe_/9358962/HP-728x90_0" marginwidth="0" marginheight="0" style="border: 0px none;">
<html>
</iframe>
<iframe id="google_ads_iframe_/9358962/HP-728x90_0__hidden__" width="0" scrolling="no" height="0" frameborder="0" name="google_ads_iframe_/9358962/HP-728x90_0__hidden__" marginwidth="0" marginheight="0" style="border: 0px none; visibility: hidden; display: none;">
</div>
</div>
Firefox(IE、Chrome、Opera、Safari)を除くすべてのブラウザに広告が表示されます。Firefoxで広告が表示されないことを他のユーザーに確認しました。Firefoxで広告を表示するにはどうすればよいですか?
DFPフォーラムでこの質問をしましたが、技術的ではなく、「AJAXの使用をやめる」がベストアンサーでしたが、訪問者のエクスペリエンスは非常に優れており、Googleは読み込みが遅くないため、ページのランク付けが高くなると思います。私はそれを使うのをやめるのが嫌いです。