如何在不知道确切数量的类的情况下找到元素的最后一个类?
我们的元素:
<div class="class-1 class-2 some-other-class"></div>
使用split的普通方法在这里不起作用,因为我们不知道类的数量。我们可以查看.split(' ')
的长度吗?
var i = $('div').prop('class');
var j = i.split(' ')[x];
任何建议都非常感谢。
答案 0 :(得分:44)
最简单的解决方案是使用pop
,它访问数组中的最后一个元素。
var lastClass = $('div').attr('class').split(' ').pop();
请注意,pop
也会从数组中删除该元素,但由于您没有对其进行任何其他操作,因此这不是问题。
答案 1 :(得分:16)
var classStr = $('div').attr('class'),
lastClass = classStr.substr( classStr.lastIndexOf(' ') + 1);
<强> DEMO 强>
由于classStr
包含由单个space
分隔的类名,因此lastIndexOf(' ')
将找到最后一个space
并从那里进行分区,并为您提供最后一个{{1}名字。