我只想在我的网站上添加一个基本的Facebook点赞按钮。我按照Facebook网站上的说明进行操作(http://developers.facebook.com/docs/reference/plugins/like/)。我尝试了HTML5、XFBML和iFrame的方式,但都无法成功。所以我认为可能是我的网站有所干扰。因此,我创建了一个像下面这样的简单的HTML页面,但仍然显示“在调用FB.init()之前调用了FB.getLoginStatus()”的错误信息。
<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>
更新:我删除了上面所有的东西,回到了只使用iFrame
的方法,并且它可以工作,但仅在Firefox中。在Chrome和IE9中,我仍然什么都没有得到,但也没有报告任何错误。为什么下面这行代码只在FireFox中有效(显然[myPage]部分已被替换)?
<iframe src="//www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.facebook.com%2F[myPage]&send=false&layout=standard&width=450&show_faces=false&action=like&colorscheme=light&font&height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:35px;" allowTransparency="true"></iframe>