我想使用jQuery获得类名

如果它有id

<div class="myclass"></div>

当前回答

如果您打算使用split函数来提取类名,那么您将不得不弥补可能产生意外结果的潜在格式变化。例如:

" myclass1  myclass2 ".split(' ').join(".")

生产

".myclass1..myclass2."

我认为最好使用正则表达式来匹配类名所允许的字符集。例如:

" myclass1  myclass2  ".match(/[\d\w-_]+/g);

生产

["myclass1", "myclass2"]

正则表达式可能不完整,但希望您理解我的观点。这种方法减少了格式不佳的可能性。

其他回答

这也有用。

const $el = $(".myclass");
const className = $el[0].className;

如果<div>有id:

​<div id="test" class="my-custom-class"></div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

...你可以试试:

var yourClass = $("#test").prop("class");

如果你的<div>只有一个类,你可以尝试:

var yourClass = $(".my-custom-class").prop("class");

像这样使用:-

$(".myclass").css("color","red");

如果您使用过这个类不止一次,那么请使用每个操作符

$(".myclass").each(function (index, value) {
//do you code
}

如果您打算使用split函数来提取类名,那么您将不得不弥补可能产生意外结果的潜在格式变化。例如:

" myclass1  myclass2 ".split(' ').join(".")

生产

".myclass1..myclass2."

我认为最好使用正则表达式来匹配类名所允许的字符集。例如:

" myclass1  myclass2  ".match(/[\d\w-_]+/g);

生产

["myclass1", "myclass2"]

正则表达式可能不完整,但希望您理解我的观点。这种方法减少了格式不佳的可能性。

如果你不知道类名,但你知道ID,你可以试试这个:

<div id="currentST" class="myclass"></div>

然后调用它使用:

alert($('#currentST').attr('class'));