如何获取元素的所有CSS类?

我有一个包含多个类的元素,我想在数组中获取它的css类。 我该怎么办? 像这样的东西:

var classList = $(this).allTheClasses(); 

无需使用jQuery:

 var classList = this.className.split(' ') 

如果您出于某种原因希望从jQuery对象中执行此操作,那么这两个解决方案也可以正常工作:

 var classList = $(this)[0].className.split(' ') var classList = $(this).prop('className').split(' ') 

当然你可以切换到overkill开发模式并为它编写一个jQuery插件:

 $.fn.allTheClasses = function() { return this[0].className.split(' '); } 

然后$(this).allTheClasses()会给你一个包含类名的数组。

请注意,您还可以将myElement.classList用作简单数组。 除了IE 9及更低版本,现在所有主流浏览器都支持此function 。

这应该为你做的工作:

 var classes = $('div').attr('class').split(" "); 

这将是其他解决方案的jQuery解决方案还有其他答案!

看一下这个:

 var classes = $('selector').prop('classList'); 
 function showClasses() { const div = document.querySelector('div'); const classes = div.className.split(' '); const p = document.querySelector('p'); p.innerHTML = classes; } 
 
This div has foo, bar classes

Above div classes appear here