如果注销,HTML5 Like按钮不会显示

时间:2013-02-11 14:48:30

标签: javascript html5 facebook-like facebook-javascript-sdk facebook-likebox

我已经在互联网上搜索,甚至突然出现在#facebook中无济于事。我尝试过FBXML代码,它的行为方式相同:如果你没有登录Facebook,那么Like按钮将不会呈现给页面。

奇怪的是,代码被处理并且FB将其魔法插入到我的类似fb的div中,但是所有可见的元素的宽度/高度都为0.我到目前为止的末尾作为故障排除或发现任何有用的线索。

以下是我正在使用的代码。 FB SDK和类似fb的元素直接来自https://developers.facebook.com/docs/reference/plugins/like/

在头上:

<meta property="fb:app_id" content="APP ID"/>

身体标签前面:

<div id="fb-root"></div>
<script>
    window.fbAsyncInit = function() {
        // Additional initialization code such as adding Event Listeners goes here
        FB.Event.subscribe('edge.create',
                function(response) {
                    $.trackEvent.apply(jQuery, ['Outbound Links', 'Click', 'Facebook']);
                }
        );
    };

    (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#xfbml=1";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>

在页面正文中:

<div class="fb-like" data-href="http://www.facebook.com/mypage" data-send="false" data-layout="button_count" data-width="50" data-show-faces="false"></div>

5 个答案:

答案 0 :(得分:3)

我已经确认问题是有权限的!不是我的应用程序的权限,而是我想让人们喜欢的FB页面的权限。

我的FB页面的年龄限制为18岁,导致了这个问题。我删除了限制并将其设置为13+,并且jsFiddle代码按预期工作。

如果没有zeebonk的帮助,我无法做到这一点,zeebonk给了我一个直接的测试,让我开始演绎过程。 :)

答案 1 :(得分:0)

您需要确保的另一件事是您的Facebook页面实际上已发布,即对公众可见。首次设置页面时,默认为未发布。请务必取消选中标题为“页面可见性”的Facebook页面设置的“管理权限”部分中的第一项。

有这个问题,并尝试了一切来解决它。实际发布页面后,facebook按钮在我退出时就开始显示了。

答案 2 :(得分:0)

我刚才遇到了同样的问题。如果我在同一个浏览器中登录Facebook,它会显示相似的框。如果我没有登录,则不会显示[在所有四个主要浏览器中尝试]。在搜索到高分和低分答案之后,事实证明你只需要在你的Facebook页面设置中将你的年龄限制设置为'13 + everyone',这就解决了这个问题。为解决方案提供Creativetim的道具。

答案 3 :(得分:0)

我遇到了同样的问题,将“页面可见性”从“未发布页面”更改为“已发布页面”。

答案 4 :(得分:0)

正如creativetim所提到的,这与Facebook的显示权限有关。但是,它不限于年龄限制。您还必须删除国家/地区限制。