如何在每次迭代完成后正确执行函数f,以便我可以计算具有该特定类的元素?
这给出0而不是16;
f = check_hfouten();
$.each(rest, function(idx, val,f) {
//alert(idx + ': ' + val);
$('td.info.'+idx).children('span').addClass('fout').attr('title',val).end().parent('tr').find('input').addClass('overlayed').click(function(){$(this).removeClass('overlayed')});
$('.tag_cloud.'+idx).addClass('reminder');
}).function(f);
感谢adv Richard
答案 0 :(得分:6)
each
不是异步的,因此您不需要回调。只需按顺序调用它:
f = check_hfouten();
$.each(rest, function(idx, val) {
//alert(idx + ': ' + val);
$('td.info.'+idx).children('span').addClass('fout').attr('title',val).end().parent('tr').find('input').addClass('overlayed').click(function(){$(this).removeClass('overlayed')});
$('.tag_cloud.'+idx).addClass('reminder');
});
f();
答案 1 :(得分:1)
将f()
的来电置于each()
回调的正文中:
$.each(rest, function(idx, val,f) {
//alert(idx + ': ' + val);
// -Snip-
$('.tag_cloud.'+idx).addClass('reminder');
f();
});
答案 2 :(得分:1)
group = $("p")
$.each(group, function(idx, val,f) {
alert(idx + ': ' + val);
if(idx == group.length - 1)
alert("done");
});
凌乱的方式:P