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

除了可以单独调用$("#item").removeClass()一个元素可能没有的每个类之外,还有一个可以调用的函数可以从给定元素中删除所有CSS类吗?

jQuery和原始JavaScript都可以使用。

村村路易2020/03/11 10:35:16

我有类似的问题。在我的禁用元素上应用了aspNetDisabled类,并且所有禁用控件的颜色都不正确。因此,我使用jquery删除了我不会使用的每个元素/控件上的此类,并且一切正常,现在看起来很棒。

这是我删除aspNetDisabled类的代码:

$(document).ready(function () {

    $("span").removeClass("aspNetDisabled");
    $("select").removeClass("aspNetDisabled");
    $("input").removeClass("aspNetDisabled");

}); 
小宇宙小小米亚2020/03/11 10:35:16

由于并非所有版本的jQuery都是相同的,因此您可能会遇到与我相同的问题,即调用$(“#item”)。removeClass();。实际上不会删除该类。(可能是一个错误)

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

document.getElementById("item").removeAttribute("class");
2020/03/11 10:35:16

尝试 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>

A小卤蛋Pro2020/03/11 10:35:15

等等,如果未指定任何特定内容,removeClass()是否默认不删除所有类?所以

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

会自己做...