jquery - 为除第一个 child 之外的所有 child 添加类(class)

标签 jquery

我有一些 html,我想向除第一个 child 之外的所有 child 添加一个类。

    <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>

看这个 fiddle

http://jsfiddle.net/aaronk85/HaH2y/

我希望测试的每个子div除了第一个之外都获得类“eg_”+(i+1),但我似乎无法让它工作?

我见过一些类似的例子,请参见下面的示例,但无法从中解决。我哪里出错了?

http://jsfiddle.net/aaronk85/y9bEG/11/

最佳答案

使用gt过滤和 callback设置精确的类别:

$('.test > div:gt(0)').addClass(function(i){
      return 'eg_'+(i+2);
});

(您的问题并不清楚您是否需要 ii+1i+2)

关于jquery - 为除第一个 child 之外的所有 child 添加类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12932211/

相关文章:

javascript - jQuery 入门——隐藏元素

javascript - 无法使极坐标图填充 Anychart 中的整个象限

javascript - 使用 AJAX 加载跨域端点

javascript - 在函数外部访问 jQuery 变量

即使在 html 网站上具有 css 效果的 Jquery 页面加载

jQuery 对话框背景更改

javascript - 确定放置在 div 中的文本量以最大化最后一行的宽度

jQuery - 当您删除输入字段中的电子邮件时如何动态隐藏提交按钮?

javascript - Build textarea with formatting controls - 如何获取选中的文本

javascript - 如何用jQuery区分鼠标左键单击和右键单击