从元素 JS 中获取类

Grab the class from an element JS

本文关键字:获取 JS 元素      更新时间:2023-09-26

我有一个li标签,看起来像:

<li class="active_fix generator" data-selected="1"></li>

在我的onClick活动中,我有一个关于$(this)console.log,然后我回来了

[li.active_fix generator] - 在我的控制台窗口中的一些事情中。

我怎样才能抢课。例如,将类名active_fix保存为var,但不保存第二个类名generator

$('active_fix').on('click', function() {
  console.log($(this));
})

谢谢。

你可以拆分类名,

$(this).attr("class").split(" ")[0]

我们使用 attr 获取类名并将字符串拆分为空格,然后我们得到数组中的第一个键。

阅读材料

attr

split

尝试使用 .attr("attributeName") 来获取其属性(any),

$('.active_fix').on('click', function() {
  console.log($(this).attr("class").split(" ")[0]); //Jquery
  console.log(this.className.split(" ")[0]); //Pure Javascript
});

this.className将返回一个字符串"active_fix生成器"。基本上,可以通过添加空格作为分隔符来将多个类应用于一个元素。因此,您可以使用space拆分返回的字符串以获取类名数组。从那个数组中[0]将使您获得第一堂课。

您可以使用

classList来检索 elemnent 类的列表:

$('.active_fix').on('click', function() {
  alert(this.classList[0]);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li class="active_fix generator" data-selected="1">...</li>

$('.active_fix').on('click', function() {
 alert($(this).attr("class").split(" ")[0]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li class="active_fix generator" data-selected="1"></li>

DevJunior 试试这个,会对你有所帮助

$('.active_fix').on('click', function() {
           console.log($('.active_fix').attr('class').split(' ')[0]);
     });
$('.active_fix').on('click', function() {
 alert(this.classList[0]);
})