就像Ajax请求后点击按钮iframe没有扩展一样

时间:2013-07-10 11:49:46

标签: ajax facebook facebook-like

我们使用Ajax在我们的网站上重新加载页面,并在每次加载页面后调用FB.XFBML.parse()来解析我们的Facebook小部件。这似乎有效。但是,Like按钮的iframe在点击后会停止展开,这会导致评论区域和头像被切断:

enter image description here

我们尝试按照建议here切换到HTML5小部件,但问题仍然存在。

一个特殊的观察是,只有当用户在加载当前页面之前访问了至少一个带有Facebook小部件的页面时,问题才会显现出来。如果用户登陆没有Facebook小部件的页面,然后单击带有“赞”按钮的页面链接,则单击时会按预期进行扩展。

1 个答案:

答案 0 :(得分:1)

现在正式为Facebook bug。在我们的案例中有帮助的解决方法是在通过Ajax将新内容插入页面之前删除FB对象:

delete FB;
wrapper.html(response.data);

我们通过Ajax重新加载整个页面,因此新页面内容重新创建FB对象并重新初始化XFBML。如果我们只重新加载页面的某些部分,不确定这种解决方法是否有效。