2012-02-22 11 views
1

私はこの問題を解決しようとしています。jquery/railsでFacebookのソーシャルボタンが機能しない

は私がに行く場合:https://rbzexercise.herokuapp.com/workouts/4

ボタンのようにFacebookが現れ、私は別のワークアウトをクリックした場合のようなボタンが消えて(私は別のワークアウトを取得するために、AJAXを使用してください)。私がリフレッシュすると、ボタンのように戻る。私はそれが私のjqueryの使用と関係があることを知っていますが、私はそれを修正する方法を知らない。

私はレール3.2.1、ルビー1.9.2を使用しています。私は十分な情報thats、私に知らせていない場合は願っています。

ありがとうございました!

更新: Facebookのコードは私のshow.js.erbファイルを経由してその実行部分

 <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> 

内のスクリプトである:

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

いくつかのコードを入力してください。 –

+0

どのようにFacebookのようなボタンを初期化していますか?あなたのAjax呼び出しがコンテンツをロードした後に、あなたはそれを再初期化していますか? –

+0

どのように再初期化しますか? –

答えて

3

あなたはFB.XFBMLを呼び出していません。 FB Likeボタンを含むHTMLElementオブジェクトを解析します。 (どのようボタンにその内容を解析し.drightコンテナをつかむと、FB JSのSDKを持っている:これは、

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

:あなたがトレーニングを切り替えると、イベントハンドラでは、関数の最後に次のように使用しますその他のマークアップベースのFBソーシャルプラグイン)。

NB:これは要素そのものではなく、要素を含んでいるため、.drightコンテナを取得し、それぞれ.fb-like要素ではありません。

+1

Btw、これをコード化する前にこれを見たい場合は、ページとJSコンソールを開きます。トレーニングを変更し、上記のコードをコンソールにドロップして、FB Like Buttonが表示されるようにします。 (これが私がこれをテストした方法です) –

+0

魅力のように動作します!ありがとう! –

+0

問題ありません。 (回答クレジットはいいです:)) –

関連する問題