Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery - remove a class that is in an array

I have a div object

<div class="class1 classA classB class2"> content </div>

and some buttons

<button id="numbers">clickme N </button>

<button id="alphas">clickme A </button>

The code should do this function:

<script>
    var classesN = [class1, class2, class3];
    var classesAlpha = [classA, classB, classC];

    $('#alphas').click(function() {
       $('div').removeClass(all classes that are in the classesAlpha array);
    });
    $('#numbers').click(function() {
       $('div').removeClass(all classes that are in the classesN array);
    })
</script>

Thanks for any suggestion and I hope you like the question :)

like image 444
thednp Avatar asked Jul 08 '12 06:07

thednp


1 Answers

.removeClass( [className] ):classNameOne or more space-separated classes to be removed from the class attribute of each matched element.

So, join all the classes you want to remove into a space separated list.

var classesN = [class1, class2, class3];
var classesAlpha = [classA, classB, classC];

$('#alphas').click(function() {
   $('div').removeClass(classesAlpha.join(' '));
});
$('#numbers').click(function() {
   $('div').removeClass(classesN.join(' '));
});
like image 167
Sinetheta Avatar answered Oct 10 '22 13:10

Sinetheta