Javascript 循环槽对象并选择最后一个对象
我正在创建一个象形图,我在其中循环对象(使用interval方法),每次不满足条件时,代码都会添加.active类。但现在我想更改最后一个对象CSS,但它会在最后一个对象之前更改一个对象Javascript 循环槽对象并选择最后一个对象,javascript,jquery,Javascript,Jquery,我正在创建一个象形图,我在其中循环对象(使用interval方法),每次不满足条件时,代码都会添加.active类。但现在我想更改最后一个对象CSS,但它会在最后一个对象之前更改一个对象 function result3() { var place = (person.bmi * 100 / 35); var realPlace = parseInt(52953 * place / 100); var pictoPlace = parseInt(realPlace / 530);
function result3() {
var place = (person.bmi * 100 / 35);
var realPlace = parseInt(52953 * place / 100);
var pictoPlace = parseInt(realPlace / 530);
var i = 0;
var timeOut = setInterval(function() {
if (i == pictoPlace) {
$(".active:last").css("color", "red");
clearInterval(timeOut);
}
$(".fa-male").eq(i).addClass("active");
i++
}, 20)
}
我尝试了.last()函数和:last选择器,但它仍然选择last之前的一个
function result3() {
var place = (person.bmi * 100 / 35);
var realPlace = parseInt(52953 * place / 100);
var pictoPlace = parseInt(realPlace / 530);
var i = 0;
var timeOut = setInterval(function() {
if (i == pictoPlace) {
$(".active:last").css("color", "red");
clearInterval(timeOut);
}
$(".fa-male").eq(i).addClass("active");
i++
}, 20)
}
这就是现在的情况:
红色的应该是最后一个。您的代码正在将最后一个
.active
设置为红色,然后添加另一个.active
元素
function result3() {
var place = (person.bmi * 100 / 35);
var realPlace = parseInt(52953 * place / 100);
var pictoPlace = parseInt(realPlace / 530);
var i = 1;
var timeOut = setInterval(function() {
if (i == pictoPlace) {
$(".active:last").css("color", "red");
clearInterval(timeOut);
}
$(".fa-male").eq(i).addClass("active");
i++
}, 20)
}
只需移动将类设置为setTimeOut
函数中的第一个类的代码:
var timeOut = setInterval(function(){
$(".fa-male").eq(i).addClass("active");
if (i == pictoPlace){
$(".active:last").css( "color", "red" );
clearInterval(timeOut);
}
i++ }
,20)
}
您的代码正在将最后一个
.active
设置为红色,然后添加另一个.active
元素
只需移动将类设置为setTimeOut
函数中的第一个类的代码:
var timeOut = setInterval(function(){
$(".fa-male").eq(i).addClass("active");
if (i == pictoPlace){
$(".active:last").css( "color", "red" );
clearInterval(timeOut);
}
i++ }
,20)
}
请为我们分享一个最小、可验证和可复制的示例,以帮助您更好地使用DOM结构代码>。问题是,在更改最后一个元素后,您正在添加
活动的
类。请为我们共享一个最小的、可验证的和可复制的示例,以帮助您更好地使用DOM结构。只需在clearInterval(超时)后添加一个return
语句即可代码>。问题是在更改最后一个元素后,您正在添加活动的类。