如何使用jQuery删除所有的CSS类?

而不是单独调用$("#item").removeClass()为一个元素可能有的每个类,是否有一个可以调用的函数,从给定的元素中删除所有的CSS类?

jQuery和原始JavaScript都可以工作。

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

调用不带参数的removeClass将删除所有项目的类。


你也可以使用(但不一定推荐, 正确的方法是上面的那个):

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

如果你没有jQuery,那么这将是你唯一的select:

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

挂起,不removeClass()默认删除所有的类,如果没有具体指定? 所以

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

会自己做…

只要将真正的DOM元素的className属性设置为'' (无)。

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

编辑:其他人说,只是调用removeClass工程 – 我testing了这个与谷歌JQuery游乐场: http : removeClass …它的工作原理。 所以你也可以这样做:

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

当然。

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

嘿,来找一个相似的答案。 然后它打我。

删除特定的类

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

说如果元素有class =“class another-class”

最短的方法

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

“榆树”中不再有阶级属性。

尝试使用removeClass

例如

 var nameClass=document.getElementsByClassName("clase1"); console.log("after", nameClass[0]); $(".clase1").removeClass(); var nameClass=document.getElementsByClassName("clase1"); console.log("before", nameClass[0]); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="clase1">I am Div with class="clase1"</div> 

我喜欢用原生js做这个,相信它或不!

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的方式

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

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

你可以试试

 $(document).ready(function() { $('body').find('#item').removeClass(); }); 

如果你必须访问那个没有类名的元素,例如你必须添加一个新的类名,你可以这样做:

 $(document).ready(function() { $('body').find('#item').removeClass().addClass('class-name'); }); 

我在我的projet中使用该函数来删除和添加HTMLbuild设者中的类。 祝你好运。

由于并不是所有版本的jQuery都是相同的,所以你可能遇到同样的问题,即调用$(“#item”)。removeClass(); 实际上并没有删除这个类。 (可能是一个bug)

一个更可靠的方法是简单地使用原始JavaScript并完全删除类属性。

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

我有类似的问题。 在我的情况下禁用元素被应用,aspNetDisabled类和所有禁用的控件有错误的颜色。 所以,我用jquery删除每一个元素/控制我不会和一切工作,现在看起来很棒的这个类。

这是我的代码去除aspNetDisabled类:

 $(document).ready(function () { $("span").removeClass("aspNetDisabled"); $("select").removeClass("aspNetDisabled"); $("input").removeClass("aspNetDisabled"); });