javascript - 循环槽对象和选择最后一个对象
问题描述
我正在创建一个象形图,在其中循环对象(使用间隔方法)并且每次不满足条件时,代码将添加 .active 类。但是现在我想更改最后一个对象 CSS,但它会在最后一个之前更改。
我已经尝试过 .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
元素。
只需移动将类设置为setTimeOut
函数中第一个的代码:
var timeOut = setInterval(function(){
$(".fa-male").eq(i).addClass("active");
if (i == pictoPlace){
$(".active:last").css( "color", "red" );
clearInterval(timeOut);
}
i++ }
,20)
}
推荐阅读
- javascript - 如何动态地将文本框连接到 jquery 事件?
- python - 在python中将字符串转换为float16
- r - 如何从 pivot_longer 中获取两列
- pine-script - 有没有办法在价格与系列相差 x% 或 $x 时发出警报?
- karate - 空手道 UI-如何搜索包含撇号(单引号)的定位器文本?
- jquery - jQuery - .hide() 和剩余的负空间
- algorithm - 树遍历运行时和空间分析一般方法
- r - 如何在 R 中更改 flexdashboard 的值框中的字体颜色
- sql - 如何合并在两个不同行上拆分的相同用户数据
- python - 计算 FFT 变换后时间序列的频率