1

我正在使用我们网站上的 FB 注册小部件。

我们的网站允许人们通过注册 CNAME 来自定义他们在我们网站上的页面的 url,因此可以像这样访问页面:

www.example.com/foo 或 foo.mysite.com/

当我嵌入 Facebook 注册小部件并通过规范域 (www.example.com) 访问它时:

  1. 蓝色的 Facebook 加载进度条出现 [] [] [] ... 几秒钟,然后...
  2. 注册小部件出现

这是意料之中的——一切都很好。

我在控制台中看到一条消息:

The "fb-root" div has not been created, auto-creating  all.js (line 30)

但这是唯一的奇怪之处。

example.com 在我的 FB 应用程序中被定义为“应用程序域”(example.com),并且在“Site Url”字段中的“Website with Facebook Login”下,它设置为http://www.example.com

当小部件嵌入到 foo.mysite.com 时,就会出现问题。FB 应用程序设置与上述相同。行为与上面提到的几乎相同,除了在第 2 步(出现注册小部件)之后,您仍然可以在后台看到加载进度条。

和以前一样,我仍然在控制台中收到此消息:

The "fb-root" div has not been created, auto-creating  all.js (line 30)

不管这个“幻影”加载栏动画如何,小部件本身工作正常,它从 Facebook 正确提取数据,redirect-uri 工作正常(单击时它按预期发布到 redirect-uri,并带有有效的签名数据)。

任何想法是什么导致了这个以及如何解决它?

顺便提一句,

<script src="http://connect.facebook.net/en_US/all.js#appId=xxxxx&xfbml=1">

<fb:registration fields="name,email" redirect-uri=http://foo.mysite.com/fb_registration?origin=http://foo.mysite.com/stuff&id=42cc fb_only="false" width="300">    </fb:registration>

当这些问题发生时(工作正常或不正确),是唯一起作用的代码。

更新:

跑步

$(".FB_Loader").hide()

“修复”问题。但是,如果有人知道可能会发生什么样的跨域内容会导致此错误,将不胜感激。

4

1 回答 1

1

以下消息:

The "fb-root" div has not been created, auto-creating  all.js (line 30)

无关紧要。JS SDK 需要这个div,但如果它不存在,它会自动创建。

于 2012-07-31T14:47:02.060 回答