是否可以在遍历项时仅运行一定次数的jQuery .each语句,而不是针对每个被迭代的项都运行一次?被迭代的JSON是一个last.fm提要(feed),当然,他们经常忽略“limit”请求。我希望通过仅运行有限次数的.each语句来绕过这个错误。
var limit = 5;
$("somelement").each(function(i, val) {
if(i > limit) return false;
// do stuff
});
或者$("somelement:lt(5)").each(function() {
// do stuff
});
不要修改 .each 方法,而是修改你的选择器来仅选择前 'n' 个元素。
var limit = 5;
$("somelement").slice(0, limit).each(function(i, val) {
// do stuff
});
myvar == 10
,则return false;
。
在each函数中返回'false'会完全停止循环。http://docs.jquery.com/Core/each
当你想要停止时,从迭代器中返回{{link1:false
}}。你的迭代器的第一个参数是索引(当循环遍历数组时)。
slice()
或修改选择器的优雅,但这是一个全用途的解决方案... 当你需要在循环中强制执行限制时,真正的解决方案可能是在某些分析后确定某些项目是否计入限制。 - king14nyr