如何加载javascript facebook api同步...?

时间:2012-02-07 07:31:51

标签: facebook facebook-graph-api facebook-javascript-sdk

我想同步加载facebook api(javascript SDK)。我在facebook开发者身上看到过这段代码。

<div id="fb-root"></div>
<script src="//connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
appId      : 'YOUR_APP_ID',
channelUrl : '//WWW.YOUR_DOMAIN.COM/channel.html', // Channel File
status     : true, // check login status
cookie     : true, // enable cookies to allow the server to access the session
xfbml      : true  // parse XFBML
});
</script>

并且还引用另一个链接 http://www.masteringapi.com/tutorials/facebook-javascript-sdk-best-practices/58/ 提到“但你需要确保你没有在你自己的JS代码或库中定义FB!”...............

我很困惑....! 请帮帮我......

2 个答案:

答案 0 :(得分:3)

你在做什么看起来很好。

您看过的指令,“但您需要确保不在自己的JS代码或库中定义FB!”只是警告不要在您的应用程序中声明一个名为FB的变量,否则您将隐藏Facebook SDK。

在您的代码中,在下一行,您可以开始使用FB.api或任何其他方法进行调用。

这有帮助吗?

答案 1 :(得分:-8)

打开html标签后添加以下代码

    <div id="fb-root">
    </div>

    <script>
        window.fbAsyncInit = function() {
            FB.init({
                appId: 'Your APP ID',
                status: true, // check login status
                cookie: true, // enable cookies to allow server to access session
                xfbml: true, // parse XFBML
                oauth: true
            });
        };
     (function() {
        var e = document.createElement('script');
        e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
        e.async = true;
        document.getElementById('fb-root').appendChild(e);
    } ());
   </script>

此代码将异步加载javascript SDK。