我有一些html,我想为除第一个孩子以外的所有孩子添加课程。
<div class="test">
<div class="different">title</div>
<div class="same">a</div>
<div class="same">b</div>
<div class="same">c</div>
</div>
以下js
<script>
$(".test").children().each(function(i) {
$(this).addClass("eg_" + (i+1));
});
</script>
看到这个小提琴
http://jsfiddle.net/aaronk85/HaH2y/
我希望除了第一个孩子之外的每个孩子的div都能得到“eg_”+(i + 1)这样的课程,而我似乎无法使其工作?
我已经看到一些类似的例子,见下面的例子,但不能完全解决这个问题。我在哪里错了?
答案 0 :(得分:7)
$('.test > div:gt(0)').addClass(function(i){
return 'eg_'+(i+2);
});
(在您的问题中,如果您需要i
,i+1
或i+2
,则不清楚
答案 1 :(得分:2)
尝试检查索引
<script>
$(".test").children().each(function(i) {
if(i!=0){ // check the first index and add
$(this).addClass("eg_" + (i+1));
}
});
</script>
答案 2 :(得分:0)
试试这个:
$(".test").children().each(function(i) {
if (i>0) {
$(this).addClass("eg_" + (i));
} else {
i++;
}
});
答案 3 :(得分:0)
## This code can help answer, and I completed my friends
##
<div id="list3">
<ul class="NewFilm">
<li>test1</li>
<li>test2</li>
<li>test3</li>
<li>test4</li>
<li>test5</li>
</ul>
</div>
<script>
$("li:lt(5)").addClass("eg_1");
</script>
<style>
.eg_1, .eg_2, .eg_3 {color:red;}
</style>