我想同步加载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!”...............
我很困惑....! 请帮帮我......
答案 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。