【问题标题】:Jquery multiple classes with .addClass dynamically使用.addClass动态查询多个类
【发布时间】:2014-04-09 09:47:35
【问题描述】:

我需要在类列表上使用 .addCLass,但函数 classList 给了我一个数组。 .addClass 不适用于数组,但如果我编写多个类(例如('.class1,class2,class3')),它确实有效。有没有办法将 .classList 数组转换为可以提供给 .addCLass 的字符串。我需要动态获取classList,因此我无法手动输入它们......

谢谢

var classList = $('#postitus').attr('class').split(/\s+/).join('.');
$(classList).addClass('active');

【问题讨论】:

标签: jquery split addclass


【解决方案1】:
var classList = $('#postitus').attr('class').split(/\s+/);

$.each(classList,function(ind,val){
   $('.' +val).addClass('active');
} );

【讨论】:

  • 这个工作正常,上面的那些不适用于我的代码。但是,我们有多个#posititus div,我需要从所有这些中获取类。 (我确实将#postitus 更改为 .postitus)
【解决方案2】:

.split(/\s+/).join('.') 给你“foo.bar.classes”,它不是一个有效的选择器,在前面加上句号:

$('.' + classList).addClass('active');

【讨论】:

    【解决方案3】:

    我会说只需稍微更改您的代码,您就会被排序为

    var classList = $('#postitus').attr('class').split(/\s+/).join(', .');
    $('.' + classList).addClass('active');
    

    在 cmets 中看到 arunpjohny 也为此更新了 fiddle,或者看到我的 fiddle

    【讨论】:

      猜你喜欢
      • 2021-10-13
      • 2015-06-30
      • 1970-01-01
      • 2022-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多