17

Web ページで FB のようなボタンを使用しています。レンダリングされる場合とレンダリングされない場合があります。エラー ログのコンソールが表示されると、エラーが表示されます。

The "fb-root" div has not been created, auto-creating

all.jsでこのコードを使用しています

<div id="fb-root">
</div>
<script>    (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=105911812857824";
        fjs.parentNode.insertBefore(js, fjs);
    } (document, 'script', 'facebook-jssdk'));
</script>


<div class="fb-like" data-send="false" data-width="450" data-show-faces="true">
                    </div>
4

2 に答える 2

7

この次のコードを使用します

<div id="fb-root"></div>
<script>(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/sdk.js#xfbml=1&appId=694586437259261&version=v2.0";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

また、このコードも入れてください

<div class="fb-like" data-href="https://developers.facebook.com/docs/plugins/" data-layout="standard" data-action="like" data-show-faces="false" data-share="false"></div>

あなたのために働く data-href="your link for like" を提供する必要があります。

于 2014-06-03T12:07:59.907 に答える
4

API を初期化する新しい方法があります。

appIdURL に埋め込む代わりに、init メソッドに入れることができます。

彼らはあなたがもう使用することさえ提案していfb-rootません。実際、なぜあなたがそうする必要があったのか、私にはよくわかりません。コンソールには引き続き警告が表示されますが、手動で入力することを心配する理由はありません。

<script>

   window.fbAsyncInit = function() {
     FB.init({
       appId      : 'your-app-id',
       xfbml      : true,
       version    : 'v2.3'
     });
   };

   (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/sdk.js";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));

</script>
于 2015-05-27T20:43:22.637 に答える