Facebook社交按钮无法在jquery / rails中运行

时间:2012-02-22 03:00:19

标签: jquery ruby-on-rails ruby facebook

我一直在努力解决这个问题。

如果我去:https://rbzexercise.herokuapp.com/workouts/4

Facebook like按钮显示,但是如果我点击另一个锻炼(我使用ajax进行另一次锻炼),那么按钮就会消失。当我刷新like按钮返回。我知道它与我使用jquery有关,但我不知道如何解决它。

我正在使用rails 3.2.1,ruby 1.9.2。我希望有足够的信息,如果不让我知道的话。

感谢您的帮助!

更新: Facebook代码在部分

中的脚本中
     <script>
     $(document).ready(function() {
     $("div.dright").append('<div class="fb-like" data-href="<%= likepage_workout_url(workout) %>" data-send="true" data-width="450" data-show-faces="true"></div>')
     });
     </script>

通过我的show.js.erb文件运行:

     $("div.descbar").html("<%= escape_javascript(render('workouts/title', :workout => @workout)) %>");

1 个答案:

答案 0 :(得分:3)

您没有在包含FB Like按钮的HTMLElement对象上调用FB.XFBML.parse。切换锻炼时,在事件处理程序中,在函数末尾使用以下内容:

FB.XFBML.parse($(".dright")[0]);

这意味着:抓住.dright容器,让FB JS SDK解析任何Like按钮(以及任何其他基于标记的FB社交插件)的内容。

注意:您不能在元素本身上使用它,而是包含元素:因此我抓住了您的.dright容器,而不是每个.fb-like元素。