2012-03-25 23 views
0

訪問者が他のページに移動したときにページを更新しないウェブサイトがあります(機能はhotornot.comと似ています)。Facebookのコメントiframe - ページが更新されないときの更新(例:AJAX)

私はFacebookのコメントを使用しようとしています。これは、訪問者の最初のページにうまく使用できます。訪問者が2番目のページに移動すると、次の「ページ」に関連するコメントボックスを更新しようとしています。

以下の私のコードを参照してください。

<head> 
    <script type="text/javascript"> 
     function facebookcomments() { 
      fbdiv = document.getElementById("fbcm"); 
      fbdiv.innerHTML = '<div id="fb-root"></div>'; 
      (function (d, s, id) { 
       var js, fjs = d.getElementsByTagName(s)[0]; 
       if (d.getElementById(id)) return; 
       js = d.createElement(s); 
       js.id = id; 
       js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=343149849069221"; 
       fjs.parentNode.insertBefore(js, fjs); 
      }(document, 'script', 'facebook-jssdk')); 
      hard_url = "http://www.example.com/usernames/" + thisusername + "/" + thisitem; 
      showcomments = document.getElementById("show_comments"); 
      showcomments.innerHTML = '<div id="fb-comments" class="fb-comments" data-href="' + hard_url + '" data-num-posts="2" data-width="470" mobile="false"></div>'; 
     } 
    </script> 
</head> 
<body onload="facebookcomments();"> 

ページがロードされ、Facebookのコメントスクリプトにこれを渡す際に基本的に私はページのためのユニークなURLを生成します。この関数は、コメントdiv onloadを入力します。

私は、facebookcomments()をトリガーしています。誰かがクリックしてプレイリストの次の項目に移動したときに機能します。私は、innerHTML関数が新しい "ページ"の関連セットを使って現在のコメントセットを単純に入れ替えることを望んでいましたが、代わりに完全に消えてしまいました。

ご協力いただければ幸いです。

答えて

0

ページにFacebookの要素を追加した後、あなたはあなたの関数の最後の行で、その関数の呼び出しを追加し、あなたは問題ないはずFB.XFBML.parse()

を呼び出す必要があります。

+0

多くの感謝 - それは完璧に動作します! – tensai288

関連する問題