0

fb:like-boxjQueryを介してホームページにいくつかの属性を持つタグを追加しようとしていますが、属性のないタグになります。

Facebook JavascriptSDKをロードした後に追加したコードは次のとおりです。

$('<fb:like-box>', {
    'href' : 'http://www.facebook.com/platform',
    'width' : '292',
    'height' : '230',
    'show_faces' : 'true',
    'stream' : 'false',
    'border_color' : '#FFF',
    'header' : 'false'
}).appendTo('#aDiv');

その結果、次のようになります。

<div id="aDiv"><fb:like-box></fb:like-box></div>

jQueryはFacebookタグが気に入らないようですので、回避策を知っている人はいますか?

4

3 に答える 3

1

XFBMLタグを解析する必要があるため、ページでJavaScriptSDKがすでに初期化されていると仮定します。

FB.init()ページ上の既存のXFBMLタグを初期化するための最初の呼び出し:

FB.init({
  appId      : 'YOUR_APP_ID', // App ID from the App Dashboard
  status     : true, // check the login status upon init?
  cookie     : true, // set sessions cookies to allow your server to access the session?
  xfbml      : true  // parse XFBML tags on this page?
});

また、初期化後に追加された他の要素(あなたの場合のように)については、FB.XFBML.parse()関数を実行する必要があります。これにより、XFBMLタグがレンダリングまたは再レンダリングされ、「いいね」ボックスが表示されます。

属性に関しては、2つの選択肢があります

  • 新しいlikeボックスを1つの文字列に追加するだけです。
  • prop()または、 / jQuery関数を使用して、attr()これらの非標準プロパティを設定できます。
var likeBox = $('<fb:like-box />');
likeBox.prop('show_faces','true');
likeBox.attr('href','http://www.facebook.com/platform');
$("#foo").append(likeBox);
于 2013-03-26T11:17:26.817 に答える
0

これを試して:

var html = $('#aDiv')。html();
$('#aDiv')。html(html +'<fb:like-box href ='http ...'width = "292" ect ...>');
于 2013-03-26T11:15:53.063 に答える
0

なぜあなたはただ全部を追加しないのですか

$("#aDiv").append('< fb:like-box 
    href="http://www.facebook.com/platform"
    width="292"
    height="230"
    show_faces="true"
    stream="false"
    border_color="#FFF"
    header="false"
    />');
于 2013-03-26T11:18:01.483 に答える