这里的语法问题,因为代码工作正常。 我有一个for循环和一个必须在其中运行的内联函数(aQuery回调)。
for (i=1;i <= 5;i++)
{
twitter[i] = $(this).find('twitter' + i).text();
//$('<div class="twitter[i]"></div>').html(twitter[i]).appendTo('#link_'+i);
$('.twitter[i]').html(twitter[i]).appendTo('#link_'+i);
// grab from twitter
$.getJSON('http://api.twitter.com/1/users/show.json?screen_name='+twitter[i]+'&callback=?',
function (data)
{
for (j=1;j <= 5; j++) {
twit_count[j] = data['followers_count'].toString();
twit_count[j] = add_commas(twit_count[j]);
$('#twitter_count'+j).html(twit_count[j]);
}
});
}
如果i = 3,我希望j在函数中是相同的值。
问题是每个循环j循环运行五次。
将i作为参数传递
function (data, i)
不起作用,某些方向会受到高度赞赏。
谢谢,
答案 0 :(得分:0)
不是100%确定你想要什么,但如果你想让回调函数只做一组计数器,它就不应该有一个循环。
要使回调中的j值与i具有相同的值,必须编写一个函数来返回回调函数,并将所需的值作为参数传递给外部函数。
$.getJSON(url, ( function(j) {
return function(data) {
twit_count[j] = data['followers_count'].toString();
twit_count[j] = add_commas(twit_count[j]);
$('#twitter_count'+j).html(twit_count[j]);
}
} )(i) )
有关详细说明,请参阅我的回答here。
答案 1 :(得分:0)
嗨,大家好回答我自己的问题。
我想要每页有一个Facebook / Twitter粉丝列表。
var f_page = ["TheHouseofMarley, Another FB ID, Another FB ID, Another FB ID"];
for(var i=0; i < 1; i++)
{
retrieveData(f_page[i]);
}
function retrieveData(teamName) {
var baseURL = 'http://graph.facebook.com/';
$.getJSON(baseURL+teamName+"&callback=?", function(data) {
$('#FBlikes').append(teamname ":" data.likes)
});
};
然后在&lt;身体&gt;
<span id='FBlikes'></span>