Pregunta ¿Cómo eliminar todas las clases de CSS usando jQuery?


En lugar de llamar individualmente $("#item").removeClass() para cada clase que un elemento pueda tener, ¿hay alguna función a la que se pueda llamar que elimine todas las clases de CSS del elemento dado?

Tanto jQuery como JavaScript sin procesar funcionarán.


681
2017-09-15 03:34


origen


Respuestas:


$("#item").removeClass();

Vocación removeClass sin parámetros eliminará todas las clases del elemento.


También puede usar (pero no es necesariamente recomendado, correcto el camino es el de arriba):

$("#item").removeAttr('class');
$("#item").attr('class', '');
$('#item')[0].className = '';

Si no tiene jQuery, esta sería prácticamente su única opción:

document.getElementById('item').className = '';

1324
2017-09-15 03:37



Espera, ¿elimina removeClass () de forma predeterminada para eliminar todas las clases si no se especifica nada específico? Asi que

$("#item").removeClass();

lo hará por su cuenta ...


106
2017-09-15 03:38



Solo configura el className atributo del elemento DOM real para '' (nada).

$('#item')[0].className = ''; // the real DOM element is at [0]

Editar: Otras personas han dicho que simplemente llamando removeClass funciona - Probé esto con Google Playground JQuery: http://savedbythegoog.appspot.com/?id=ag5zYXZlZGJ5dGhlZ29vZ3ISCxIJU2F2ZWRDb2RlGIS61gEM ... y funciona. Entonces también puedes hacerlo de esta manera:

$("#item").removeClass();

12
2017-09-15 03:37



Por supuesto.

$('#item')[0].className = '';
// or
document.getElementById('item').className = '';

10
2017-09-15 03:36



Heh, vino en busca de una respuesta similar. Entonces me golpeó.

Eliminar clases específicas

$('.class').removeClass('class');

Diga si el elemento tiene clase = "clase otra clase"


9
2018-06-08 18:57



El método más corto

$('#item').removeAttr('class').attr('class', '');

7
2018-01-21 15:59



$('#elm').removeAttr('class');

ya no habrá attr de clase presente en "olmo".


3
2018-01-08 07:18



Me gusta usar js nativos para hacer esto, ¡créalo o no!

1.

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

2.

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

jQuery maneras

  1. $("#item").removeClass();

  2. $("#item").removeClass("class1 ... classn"); 


2
2018-06-13 03:56



Como no todas las versiones de jQuery se crean iguales, puede encontrarse con el mismo problema que yo, lo que significa llamar $ ("# item"). RemoveClass (); en realidad no elimina la clase. (Probablemente un error)

Un método más confiable es simplemente usar JavaScript crudo y eliminar el atributo de clase por completo.

document.getElementById("item").removeAttribute("class");

1
2018-06-20 16:29