在调用FB.init()之前自动创建FB.getLoginStatus()

时间:2012-11-29 22:22:16

标签: facebook facebook-graph-api facebook-like opengraph connect

我在Safari和其他浏览器中收到此错误:

尚未创建“fb-root”div,自动创建

all.js:52

在调用FB.init()之前调用FB.getLoginStatus()。

all.js:52

在我的标题中,我有这个:

<html  xmlns="http://www.w3.org/1999/xhtml" 
 xmlns:og="http://ogp.me/ns#"  
 xmlns:fb="http://www.facebook.com/2008/fbml"
 xml:lang="en" lang="en">

<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>

<meta property=""fb:admins"" content=""508331528"" />
<meta property=""fb:page_id"" content=""118806721611355"" />
<meta property=""fb:app_id"" content=""426360900751901"" />

(我意识到我不应该拥有所有三个属性标签,但我尝试了各种方案)

在页面正文中,我有两个简单的facebook标签:

<fb:like data-href="http://www.PrintMyWatercolor.com" layout="button_count" style="width: 90px;" data-show-faces="true" data-send="true" action="recommend"></fb:like>

<fb:comments href="http://www.PrintMyWatercolor.com" numposts="25" width="590"></fb:comments>

据我了解,这应该没问题。我在页面上没有任何明确的javascript代码。如何解决此错误?

谢谢,

凯尔

1 个答案:

答案 0 :(得分:3)

  1. 您没有(从该示例中)看到Javascript SDK附加到自己的<div id="fb-root"></div>

  2. 您加载Javascript SDK的方法不是异步的,因此可能会在页面完成之前加载SDK,而是使用方法from the documentation,这可以通过在其余部分附加SDK来实现。文件已加载