2012-10-02 89 views
1

我無法在jQuery-UI標籤(通過ajax加載)中顯示Google DFP廣告。我這裏有一個例子:無法讓Google DFP廣告在jQuery-UI標籤中顯示

http://www.anecka.com/google_dfp/

正如你所看到的,初始頁面加載和刷新工作正常,當標籤之間的切換用戶的谷歌DFP廣告的消失。 Google控制檯顯示我的標記是正確的,並且控制檯中沒有javascript錯誤。

我已經得到了推動廣告的方法:

function pushVerticalGoogleAd(slot, div_id) { 
     googletag.cmd.push(function() { 
      googletag.defineSlot('/7085388/' + slot, [950, 80], div_id).addService(googletag.pubads()); 
      googletag.enableServices(); 
      googletag.display(div_id); 
     }); 
    } 

每個標籤都包含像這樣來調用此方法:

pushVerticalGoogleAd('homepage_top_950x80', 'ad1'); 

現在你說,這是因爲我之前重複使用相同的div-id,我聲明重複的插槽,我同意,但每當我在服務器上隨機分配廣告div_ids時,它仍然存在這個問題。

我知道我可能在這裏碰到一個鞋子的釘子,所以任何有Google DFP經驗的人都知道我能在哪裏找到錘子? :)

感謝

回答

0

我想你應該嘗試使用刷新方法...不知道正是你正在嘗試做它很難知道這是否會爲你,但下面的代碼,並至少能讓工作廣告顯示與多次點擊...

試試這個:

<html> 
<head> 
    <title>Test</title> 
    <link rel="stylesheet" href="css/ui-lightness/jquery-ui-1.8.24.custom.css" /> 
    <script type="text/javascript" src="js/jquery-1.7.1.js"></script> 
    <script type="text/javascript" src="js/jquery.ui.core.js"></script> 
    <script type="text/javascript" src="js/jquery.ui.widget.js"></script> 
    <script type="text/javascript" src="js/tabs.js"></script> 
    <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"> 
     var divs = {}; 
     function pushVerticalGoogleAd(slot, div_id) { 
      if(div_id in divs) { 
       googletag.cmd.push(function() { 
        googletag.pubads().refresh([divs[div_id]]); 
       }); 
      } else { 
       googletag.cmd.push(function() { 
        divs[div_id] = googletag.defineSlot('/7085388/' + slot, [950, 80], div_id).addService(googletag.pubads()); 
        googletag.enableServices(); 
        googletag.display(div_id); 
       }); 
      } 
     } 
    </script> 
</head> 
<body> 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      $('#tabs-contain').tabs(); 
     }); 
    </script> 
    <div id="tabs-contain"> 
     <ul id="tabs"> 
      <li><a href="ad1.html"><span>Tab 1</span></a></li> 
      <li><a href="ad2.html"><span>Tab 2</span></a></li> 
     </ul> 
    </div> 
</body> 
</html> 
相關問題