像按钮不显示

时间:2011-09-09 21:00:03

标签: facebook-like social-media

从未在开发者级别处理Facebook,我确信我在这里做的事情显然是错误的。无论如何,这是问题所在:

我从https://developers.facebook.com/docs/reference/plugins/like/生成类似按钮代码,然后将其复制到我的页面中。当我尝试查看该网站时,我什么都没有显示。

我注意到脚本部分中的url未能包含协议(它出现:“// connect.facebook.net/en_US/all.js#appId=207642302633270&xfbml=1”)。当我看看使用Firebug发生了什么时,我可以看到它正在将script标签插入到head部分 - 但是URL不起作用。我已经尝试修改它以包含“https:”作为协议,然后我看到脚本被加载,并且它还将一堆CSS插入到head部分。

但网站上仍然没有显示任何内容。

我唯一可以想到可能有问题的是我(或者更确切地说,我的客户)没有任何类型的Facebook公司资料 - 我可以要求他们如果需要,可以设置一个,但这不是首选选项,因为他们不想为业务维护Facebook个人资料。

以下是我正在使用的精简样本:

<html>
    <head>
        <title>Testing the Like Button</title>
        <meta property="og:title" content="Company FB Test" />
        <meta property="og:type" content="company" />
        <meta property="og:url" content="http://www.domain.com/fb-test.html" />
        <meta property="og:image" content="http://www.domain.com/logo.png" />
        <meta property="og:site_name" content="Site Name" />
        <meta property="fb:admins" content="__MY_FB_ID__" />
    </head>
    <body>
        <script>(function(d){
            var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
            js = d.createElement('script'); js.id = id; js.async = true;
            js.src = "https://connect.facebook.net/en_US/all.js#appId=207642302633270&xfbml=1";
            d.getElementsByTagName('head')[0].appendChild(js);
        }(document));</script>
        <div class="fb-like" data-send="false" data-layout="box_count" data-width="67" data-show-faces="false" data-font="arial"></div>
    </body>
</html>

几点说明:

  1. 该示例包含协议“https:” - 如上所述,我也尝试过没有。
  2. 已在最新版本的Chrome 13,Firefox 6和IE 9
  3. 中测试过
  4. 我在Facebook Lint上测试了它,它没有给我任何错误。
  5. 提前感谢任何成功向我指出显而易见的事情的人 - 以及任何以友好建议为其提出意见的人。

    干杯, 扎克

1 个答案:

答案 0 :(得分:1)

您需要确保在页面的某处添加此代码:

<div id="fb-root"></div>

您将在Chrome调试器工具中看到有错误说它无法找到该div。