jQuery获取类选择器部分的剩余值

时间:2013-09-05 02:13:17

标签: jquery arrays selector

我有一个包含多个类的元素。当我单击这个类时,我需要将一个类的剩余部分作为变量。

我知道班级的第一部分总是以“jump _”开头

示例:

<span class="jump jump_toThis randomClass">Something</span>

$('#tray').on('click', 'span.jump', function(e){
    var $this     = $(this),
    classList = $this.attr('class');

    console.log(classList);
    // Not sure how to remove *jump_* from *toThis* 
    // along with the other classes

});

1 个答案:

答案 0 :(得分:1)

尝试

$('#tray').on('click', 'span.jump', function (e) {
    var className = this.className,
        jumper = className.match(/\b(jump_.*?)\b/)[1];
    if (jumper) {
        $(this).removeClass(jumper).addClass(jumper.replace(/^jump_/, ''))
    }
});

演示:Fiddle

如果您想仅保留toThis作为课程

$('#tray').on('click', 'span.jump', function (e) {
    var className = this.className,
        jumper = className.match(/\b(jump_.*?)\b/)[1];
    if (jumper) {
        $(this).removeClass().addClass(jumper.replace(/^jump_/, ''))
    }
});

演示:Fiddle