我剛開始玩Facebook API。我有一個基本的「地獄世界」應用程序,只顯示登錄用戶名。當我有FB.init()函數內聯(顯示「使用Facebook登錄」按鈕並工作)時,它工作得很好。然而,我試圖創建一個名爲「Facebook.js」的JS文件,並將init()放在那裏,現在我只看到「使用Facebook登錄」的純文本,顯然它不起作用。包含facebook連接函數的外部鏈接?
可以做到這一點嗎?我錯過了一些愚蠢的東西嗎? (可能是兩者)
[------------- index.aspx ---------------------- -------------------------------------]
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Scott's test application</title>
<script src="JS/jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="http://connect.facebook.net/en_US/all.js" type="text/javascript"></script>
<script src="JS/facebook.js" type="text/javascript"></script>
</head>
<body>
<div id="fb-root"></div>
<div>Welcome <span id="guest" class="UserNameWelcome">Guest</span><span id="name" class="UserNameWelcome"></span>!</div>
<div><img src="" alt="Avatar" id="image"/></div>
<fb:login-button>Login with Facebook</fb:login-button>
</body>
</html>
[ - ----------- facebook.js ------------------------------------ -----------------------]
FB.init({
appId: 'myappid', cookie: true,
status: true, xfbml: true
});
FB.api('/me', function (user) {
if (user != null) {
var image = document.getElementById('image');
image.src = 'https://graph.facebook.com/' + user.id + '/picture';
var name = document.getElementById('name');
name.innerHTML = user.name
} else {
$('#image').hide();
$('#name').hide();
}
});
可選地,您可以跳過* Facebook.js *中的異步加載部分,並在加載* Facebook.js *之後引用JavaScript SDK,如下所示:' –