jQuery について質問する必要があるのか、Facebook について質問する必要があるのか わかりませんが、そうです: 私の現在の Web サイトであるSocial Promoでは、ユーザーが友人を招待してスポンサーに参加することができます。だから私は以下のコードを使用し、それはうまく動作します...IEを除いて。
function load_friends() {
if($('#fb_friendbox').is(':empty')) {
FB.api('/me/friends', function(response) {
$.each(response.data, function(index,friend) {
var nextFriend = '<div class="fb_friend" onclick="resend_invite('+friend.id+');return false;"><div class="fb_picture"><img src="https://graph.facebook.com/'+ friend.id +'/picture" /></div><div class="fb_name"><span>'+ friend.name +'</span></div></div>';
$('#fb_friendbox').append(nextFriend);
});
$('.ajax-load').css('display','none');
});
}
}
IE の js コンソールが (フランス語から) 教えてくれますCan't get value of 'length', object is null or undefined
。私は IE をあまり使用しないので (私の知る限り、console.log や debug は使用できません)、alert() をいくつか試してみたところ、次のようになりました。
response
オブジェクトですresponse.data
は定義されていません (Chrome などの他のブラウザーでは、オブジェクトのリストが返されます)$.each
行までのコードフローは問題ありません
結局、IE は現在のユーザーの友達のリストをロードしません。IE が必要としているが、他のブラウザには必要のないこの機能の何かを見逃していませんか?