Pregunta Eliminando múltiples clases (jQuery)


¿Hay alguna forma mejor de reescribir esto?

$('element').removeClass('class1').removeClass('class2');

No puede usar removeClass(); ya que eliminaría TODAS las clases, lo que no quiero.

Gracias


507
2017-09-28 06:10


origen


Respuestas:


$("element").removeClass("class1 class2");

De removeClass(), el parámetro de clase:

Una o más clases de CSS para eliminar   los elementos, estos están separados por   espacios.


944
2017-09-28 06:13



$('element').removeClass('class1 class2');

aquí son los documentos.


54
2017-09-28 06:12



http://docs.jquery.com/Attributes/removeClass

Una o más clases de CSS para eliminar de los elementos, están separadas por espacios.


18
2017-09-28 06:13



los documentación dice:

class (Optional) String
  Una o más clases de CSS para eliminar de los elementos, están separadas por espacios.

Ejemplo:

Elimine la clase 'azul' y 'debajo' de los elementos coincidentes.

$("p:odd").removeClass("blue under");

15
2017-09-28 06:14



¡Hay muchas formas de hacerlo!

jQuery

  1. eliminar toda clase
    $("element").removeClass();
    O
    $("#item").removeAttr('class');
    O
    $("#item").attr('class', '');
    O
    $('#item')[0].className = ''; 

  2. eliminar clase múltiple
    $("element").removeClass("class1 ... classn");
    O
    $("element").removeClass("class1").removeClass("...").removeClass("classn");

Javascript nativo

  1. eliminar toda clase

// remove all items all class  
const items = document.querySelectorAll('item');
for (let i = 0; i < items.length; i++) {
    items[i].className = '';
}

  1. eliminar clase múltiple

// only remove all class of first item
const item1 = document.querySelector('item');
item1.className = '';


5
2018-06-13 04:04