0

問題は、Facebook API の準備が整う前にページが読み込まれることです。また、ユーザーが Facebook 接続ボタンをクリックすると、変数 FB は定義されません。

現在、document.ready に Facebook API をロードしています。

カスタム イベントをトリガーする回避策を見つけました。

mobileinit イベントで Facebook API をロードするのは良い解決策ですか? 他のすべてのスクリプトの前に一度だけロードされますか?

コード :

$(document).on("mobileinit", function(){
  $.ajaxSetup({ cache: true });
    $.getScript('//connect.facebook.net/en_US/all.js', function(){
        window.fbAsyncInit = function() {
            FB.init({
                appId: 'appid',
                channelUrl: 'channel.html',
                //status: true,
                cookie: true,
                xfbml: true
            });
            $(document).trigger("facebook:ready");
        }
    });
});

回答ありがとうございます

4

1 に答える 1