jQuery - Remove all classes with similar names

后端 未结 4 1744
攒了一身酷
攒了一身酷 2021-01-02 07:10

Is there any better way to do this?

$(\'element\').removeClass(\'class-1\').removeClass(\'class-2\').removeClass(\'class-3\').removeClass(\'class-5\') ...
to         


        
4条回答
  •  悲&欢浪女
    2021-01-02 07:34

    Here's a small jQuery plugin I'm using for this purpose:

    (function($) {
        $.fn.removeClassWild = function(mask) {
            return this.removeClass(function(index, cls) {
                var re = mask.replace(/\*/g, '\\S+');
                return (cls.match(new RegExp('\\b' + re + '', 'g')) || []).join(' ');
            });
        };
    })(jQuery);
    

    You use it like this:

    $(...).removeClassWild('class-*');
    

提交回复
热议问题