我正在使用Facebook Connect的网站上工作,最近进行了一些更改,以便主页被缓存,如果您没有登录(使用ajax调用检查),它会加载Facebook Connect javascript并将连接按钮呈现为这页纸.除了Internet Explorer 7和8之外,这在任何地方都能很好地工作.奇怪的是我将按钮渲染为隐藏的“注册/登录”表单,当您显示其中任何一个时,会出现“连接”按钮.你可以看看here,你会看到Firefox中的按钮,而不是Internet Explorer.如果单击“登录”,将显示该按钮.
这是一个Rails应用程序所以在服务器端我们响应一个像这样的rjs的ajax调用:
@H_502_8@ page['signin-status'].replace(:partial => "common/layout/signin_menu") page.select('.facebook-connect').each do |value,index| value.replace(render(:partial => '/facebook/signin')) end page << <<-eos LazyLoader.load('http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.PHP',function(){ FB.init('#{Facebooker.api_key}','/xd_receiver.html'); }); eos
第一行是替换标题,第二行是Modal对话框中的Connect按钮.渲染到标题中的部分内容如下所示:
@H_502_8@
呈现在Modal对话框中的Partial如下所示:
@H_502_8@最佳答案