0

这是我启用了 Google Plus、Twitter 和 Facebook 共享的页面。您可以尝试查看行为:

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>

我已经尝试了一切,但它仍然从元标签而不是微数据标签中读取信息。

非常感谢您在解决这些问题方面的帮助。

谢谢, Sundeep

4

1 回答 1

0

虽然标记一目了然,但测试工具没有找到您的 schema.org 值。我看到共享片段预览的结果不准确。

该对话框的问题可能与您已实施的重定向有关。这些通常应该没问题。有没有一种方法可以在没有重定向的情况下进行测试?喜欢使用https://www.famometer.com/views/viewAd.xhtml?ad=usatoday进行测试?

于 2013-03-25T15:02:22.637 回答