2013-03-23 81 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