我正在使用Facebook Connect的网站上工作,最近进行了一些更改,以便主页被缓存,如果您没有登录(使用ajax调用检查),它会加载Facebook Connect javascript并将连接按钮呈现为这页纸.除了Internet Explorer 7和8之外,这在任何地方都能很好地工作.奇怪的是我将按钮渲染为隐藏的“注册/登录”表单,当您显示其中任何一个时,会出现“连接”按钮.你可以看看here,你会看到Firefox中的按钮,而不是Internet Explorer.如果单击“登录”,将显示该按钮.
这是一个Rails应用程序所以在服务器端我们响应一个像这样的rjs的ajax调用:
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按钮.渲染到标题中的部分内容如下所示:
呈现在Modal对话框中的Partial如下所示:
最佳答案