2

Facebookプラグインを再度レンダリングせずにFB.XFBML.parseを使用する方法はありますか?

Facebook の「いいね」ボタンまたは Facebook のおすすめバーを使用します。

実際の例: http://www.gablabelle.com/eve-d

スライドして、右下隅のちらつきを表示します。

$.address.state(ajax_object.path).crawlable(true).value(whereiam);
$(".fb-recommendations-bar").data("href",whereiamurl);
//$(".fb-like").data("href",whereiamurl);
fburl = $(".fb-recommendations-bar").data("href");
//fburl = $(".fb-like").data("href");
console.log(fburl);
FB.XFBML.parse();

助けてくれて本当にありがとうございます。

4

5 に答える 5

1

親 DOM 要素を に渡すことで、再解析の範囲を制限できますFB.XFBML.parse

于 2012-12-26T13:36:17.267 に答える
1

「ページ変更」が必要な場合は、Facebook プラグイン div の上に不透明レイヤーを追加します。完全に不透明になるようにアニメーション化します。FB.XFBML.parse() を呼び出して、再レンダリングするまでしばらく待ちます。レイヤーを非不透明にアニメーション化してから、Facebook プラグイン div の上から不透明レイヤーを削除します (または、実際にページをリロードせずに次回「ページ変更」を行う必要があるときのためにそのままにしておきます。

この手法により、耳障りな「ちらつき」ではなく、優雅に消えたり現れたりするプラグインが得られます。

于 2012-12-31T22:08:43.853 に答える
0

私は最近これを持っています。

XFMBLを変数にラップすることで回避しました...理由はわかりませんが、それがないとちらつきのように見えました...ちらつきを止める方法の完全なハックですが、私にとってはうまくいきました!!

      if(call == 0){
          FB.XFBML.parse();
          call = 1;
  }
于 2013-02-25T15:14:48.487 に答える
0

DMCS は、唯一の半分適切な答えのように見えるものを提供しましたが、それはお尻が醜いです. 各ユーザーの Web ブラウザーがそれらをレンダリングするのにどれくらいの時間がかかるかはわかりません。レンダリングされたと思われるコールバックも機能しません。また、ちらつきはfirefoxでは見られず、google chromeでのみ見られます。

于 2013-06-19T08:23:38.323 に答える
0

スライド変更イベントで、前のスライド+現在のスライド+次のスライドの Facebook のいいね! をキャッシュします。そのため、次または前のページに移動し、その Facebook のようなものが既に準備/ロードされている必要がある場合、ユーザーにはちらつきが表示されません。彼/彼女がスライドで断食しない限り。

于 2013-01-04T07:27:10.187 に答える