だから私はjavascriptでこのコードを書いた:
// Additional initialization code such as adding Event Listeners goes here
FB.api('593959083958735/albums', function(response) {
if(!response || response.error) {
// render error
alert("Noo!!");
} else {
// render photos
for(i=0; i<response.data.length; i++){
var albumName = response.data[i].name;
var albumCover = response.data[i].cover_photo;
var albumId = response.data[i].id;
console.log(albumName);
FB.api( albumCover, function(response) {
if(!response || response.error) {
// render error
alert("Noo!!");
} else {
// render photos
$("ul").append('<li>'+
'<a href="testFile.HTML" data-transition="slidedown">'+
'<img src= "' + response.picture + '" />'+
'<h2>' + albumName + '</h2>'+
'<p> Test Paragraph</p>'+
'</a>'+
'</li>')
.listview('refresh');
}
});
}
}
});
私は Facebook の JavaScript API を使用して、Facebook ページのフォト アルバムを jquery モバイル ページにインポートし、それらを listView に配置しています。ご覧のとおり、listView を動的に作成します。listView には、サムネイルとしてアルバム coverPhoto と headline 、アルバム名があります。
しかし、ここで何かがひどく間違っています。上記のコードの結果はここで見ることができます
サムネイルはすべて正しいですが、アルバム名が間違っています。すべてのセルで、最後のアルバム名を取得します。ご覧のとおり、コードで console.log(albumName) を実行すると、すべての名前が正しく表示されます。しかし、FB.api への 2 回目の呼び出し内では、"albumName"
変数は最後のアルバム名のみを保持します。
ここで何が起こっているのか分かりますか?それは文字通り私を夢中にさせます...