2013-03-23 108 views
0

以下是我啓用Google Plus,Twitter和Facebook共享的頁面。你可以嘗試和看到的行爲:fb like和gplus共享功能問題

https://www.famometer.com/usatoday

的Twitter分享按鈕的工作原理就像一個魅力,但其主要的惡夢使G +和FB像按鈕的工作。

第一個問題: 當Like按鈕被點擊時,它顯示了一個秒評論對話,然後在隨後的點擊只是不斷閃爍,不允許共享。我嘗試使用FF來查找任何JavaScript錯誤或類似的錯誤,但沒有看到任何錯誤。

下面是代碼:

右後<h:body>我有這樣的Java腳本代碼:使用

命名空間:xmlns:fb="http://ogp.me/ns/fb#"

<div id="fb-root"></div> 
<script> 
window.fbAsyncInit = function() { 
    FB.init({ 
     appId  : '489611804432300', 
     status  : true, // check login status 
     cookie  : true, // enable cookies to allow the server to access the session 
     oauth  : true, // enable OAuth 2.0 
     xfbml  : true // parse XFBML 
    }); 

    // All your canvas and getLogin stuff here 
    // 
    }; 
(function(d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) return; 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk'));</script> 

,然後在viewAd.xhtml,我有這樣的代碼:

<fb:like id="fbLike" href="https://www.famometer.com/usatoday" send="false" width="100" show_faces="false" layout="button_count" action="like" style="top:-3px"></fb:like> 

我已經完成了所有通過這本書,但仍然無法正常工作。如果我沒有登錄FaceBook,會彈出對話框進行登錄,但登錄後,每當單擊按鈕時,彈出窗口會一直閃爍。有人可以解釋一下實施過程中出現了什麼問題。

第二個問題是與G +按鈕

它不填充由微結構所提供的URL,標題和說明。

下面是代碼:

命名空間用於:xmlns:g="http://base.google.com/ns/1.0"

<div itemscope="itemscope" itemtype="http://schema.org/Product"> 
    <span style="font-weight: bolder; font-size: 20px;" itemprop="name">#{adBB.business.businessName}</span><br/> 
    <span style="font-weight: bolder; color:gray;" itemprop="description">#{adBB.business.description}</span> 
    <h:panelGrid> 
    ... some code here... 
    <g:plusone href="https://www.famometer.com/#{adBB.business.socialMedia.famometer}" size="medium" count="false"></g:plusone> 
    ... some code here 
    </h:panelGrid> 
</div>    

這裏是JavaScript的 - 在頁面底部異步之一。

<script type="text/javascript"> 
      (function() { 
      var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; 
      po.src = 'https://apis.google.com/js/plusone.js'; 
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); 
      })(); 
</script> 

我已經嘗試了一切,但它仍然從元標記讀取信息,而不是從微數據標記中讀取信息。

真正感謝您在解決這些問題上的幫助。

感謝, 森迪普•

回答

0

雖然標記,顯得一目瞭然精細,testing tool is not finding your schema.org values。我看到分享片段預覽的結果不準確。

該對話框的問題可能與您擁有的重定向有關。這些通常應該可以。有沒有一種方法可以在沒有重定向的情況下進行測試?像使用https://www.famometer.com/views/viewAd.xhtml?ad=usatoday來測試?

+0

感謝有關測試g +共享代碼的工具信息。當然,讓我嘗試沒有重定向。 – 2013-03-26 01:20:30