jQuery - 查找元素上的最后一个类

23

如何在不知道类的确切数量的情况下找到元素上的最后一个类?

我们的元素:

 <div class="class-1 class-2 some-other-class"></div>

使用常规的分割方法是行不通的,因为我们不知道类的数量。我们能检查 .split(' ') 的长度吗?

var i = $('div').prop('class');
var j = i.split(' ')[x];

非常感谢您提供的任何建议。


3
如果您想在一行代码中完成此操作,则i.split(' ')[i.split(' ').length - 1]可以获取最后一个类。 - Prasenjit Kumar Nag
类基本上是无序的实体。就我个人而言,我不想依赖javascript/jQuery提供“正确”的结果。如果我需要知道添加到元素(或一组元素)中的最后一个类,则会通过其他方式来跟踪它。 - Beetroot-Beetroot
2个回答

53

最简单的解决方案是使用pop,它可以访问数组中的最后一个元素。

var lastClass = $('div').attr('class').split(' ').pop();

请注意,pop 也从数组中删除元素,但由于您没有对其执行其他任何操作,这并不成问题。


18
var classStr = $('div').attr('class'),
    lastClass = classStr.substr( classStr.lastIndexOf(' ') + 1);

演示

classStr 包含由单个 空格 分隔的类名,因此 lastIndexOf(' ') 会从最后一个 空格 处进行划分,并给出最后一个 class 名称。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接