我在jQuery中有一个非常简单的for循环:
var iEra;
for(iEra = 1; iEra <= li.length; iEra++) {
li.addClass(iEra);
}
li 是一个针对$('ul.class li')对象的变量。 iEra 是计数器变量,应该从1开始到 li 对象的数量。
主要问题是addClass函数根本没有发生。但是,如果我将其替换为 alert(iEra); ,我将收到1-x警报。
我知道我可以将我的for循环修改为“构造函数”,如下所示:
var iEra;
for(iEra = 1; iEra <= li.length; iEra++) {
parentOfli.append('<li class=" + iEra + "></li>');
}
这样我就可以让我的1-x课程添加得很好。问题是,那些li对象已经在其他地方生成了。
我希望我彻底解释自己;如果没有,请让我知道! 实例:http://jsfiddle.net/c3cXB/9/
答案 0 :(得分:2)
班级名称不能为数字。
以下是有效的:http://jsfiddle.net/c3cXB/10/
var li = $('ul.portfolio-excerpt').find('li');
var iEra, thumbLi = $('.thumbs ul li');
for (iEra = 1; iEra <= li.length; iEra++) {
thumbLi.eq(iEra).addClass('class'+iEra);
}
答案 1 :(得分:0)
如果你真的需要一个循环
$('.thumbs ul li').each(function(index) {
$(this).addClass(iEra);
}
或者这样,如果你只想为所有的李
添加一个类$('.thumbs ul li').addClass(iEra);
答案 2 :(得分:0)
我不确定你的例子有什么问题,我不得不将css更改为'li.thumbs'以查看以下内容是否有效:
var $thumbLi = $('.thumbs ul li')
$('ul.portfolio-excerpt li:lt(' + $thumbLi.length + ')').addClass('thumbs');