我已经用Google搜索了这个问题,但实际上并没有找到任何帮助。
我的div有3个班级。我想得到最后一个className但不是我指定的那个。
E.x第三是div中的最后一个类,但我不希望选择它,除非在这种情况下我想要选择第二个最后一个。
到目前为止,我已经尝试了
$('div:not(.third)').attr('class').split(' ').pop();//Throwing Type Error
$('div').attr('class').split(' ').pop().not(".third");//.not is not a function
我已经做了一个简单的小提琴如果有任何好友可以帮助我。
由于
答案 0 :(得分:1)
pop()确实删除了最后一个元素,但它也返回了被删除的元素。您只需要访问原始数组:
$("button").on("mouseenter",function(){
var arr = $("div").attr('class').split(' '); // Split the class into the array
arr.pop(); // Remove the last element
// Make sure we're left with at least one class
if(arr.length) console.log(arr[arr.length-1]); // Prints "second"
});
答案 1 :(得分:1)
如果我说得对,你想得到一个数组的最后一项,除了它有你之前指定的值:
var classes = $("div").attr('class').split(' ');
classes.pop();
var index = classes.indexOf('third');
if(index > -1){
classes.splice(index, 1);
}
var lastclass = classes.pop();
<强> Demo 强>
<强>参考强>
答案 2 :(得分:0)
如果我理解正确,这是你的解决方案。
$("button").on("click",function(){
var arr = $("div").attr('class').split(' ');
alert(arr[arr.length -2]);
});