我不确定我是否必须询问 jQuery 或 Facebook,但是:我当前的网站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 或调试),我只是尝试了一些 alert() 并查看:
response
是一个对象response.data
未定义(其他浏览器,如 Chrome,返回对象列表)- 代码流很好,直到该
$.each
行
所以最后IE不加载当前用户的好友列表,也不知道是什么。我是否错过了 IE 需要的此功能中的某些内容,但其他浏览器却没有?