facebook在调用FB.init()之前调用按钮不显示:: FB.getLoginStatus()

gfr*_*ius 7 html5 facebook facebook-like facebook-javascript-sdk

我只想在我的网站上使用基本的facebook按钮.我按照facebooks网站上的说明进行操作(http://developers.facebook.com/docs/reference/plugins/like/).我尝试了HTML5,XFBMLiFrame方式,没有任何快乐.所以我想也许这与我的网站干扰有关.所以我创建了一个简单的html页面,如下所示,它仍然FB.getLoginStatus()在调用FB.init()错误之前给我调用.

<html>
<body>
<div id="fb-root"></div>
<script>(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-width="450" data-show-faces="false"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

更新:我删除了上面所有的东西回到iFrame唯一的方法,它的工作原理,但只在Firefox中.Chrome和IE9我仍然没有得到任何错误报告.为什么下面的这一行只能在FireFox中工作(显然[myPage]部分被换掉了)?

 <iframe src="//www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.facebook.com%2F[myPage]&amp;send=false&amp;layout=standard&amp;width=450&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font&amp;height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:35px;" allowTransparency="true"></iframe>
Run Code Online (Sandbox Code Playgroud)

sup*_*jos 3

不确定 App ID 是否是这里的问题。我也遇到了这个奇怪的错误消息,我只是包含了 FB Like Button 社交插件的标准代码,由 FB 开发人员页面提供。

然后我再次浏览插件配置页面并再次复制代码,无论如何,代码都没有改变,注意到生成代码的 HTML 部分几乎没有什么区别(以前是一个<fb:like>标签,现在是<div class="fb-like">。无论如何,错误仍然存​​在。

然后我才意识到,几周后 FB Like Button 将永久迁移到Open Graph 的内置 Like 操作,如果我正确理解,您无论如何都必须创建一个 App ID。

那时错误可能就会消失。似乎任何人都很难修复几周后就会消失的东西。

华泰