gpt4 book ai didi

javascript - 为各个数组元素分配不同的颜色

转载 作者:行者123 更新时间:2023-11-28 13:47:03 27 4
gpt4 key购买 nike

假设我有数组 arr1。我想打印这个数组(即仅显示数字),但是,我想根据数字的值对数字进行着色。如果 arr1[i]<15,则为绿色;如果 arr1[i]>20,则为红色,否则为橙色。有这样的效果。

var arr1 = [ 5,10,13,19,21,25,22,18,15,13,11,12,15,20,18,17,16,18,23,25,25,22,18,15,13,11,12,15,20,18];

这是我尝试做的事情:

        for(var i=0; i<arr1.length;i++){
if(arr1[i]<15){
var temp = $(this).css("color","green");
$this.text(temp);
} else if(arr1[i]>20){
var temp = $(this).css("color","red");
$this.text(temp);
} else {
var temp = $(this).css("color","orange");
$this.text(temp);
}

}

我尝试更改各个元素的 css 属性并将它们添加到 div,但它对我不起作用。

有人可以建议我该怎么做吗?

最佳答案

我建议:

var arr1 = [5, 10, 13, 19, 21, 25, 22, 18, 15, 13, 11, 12, 15, 20, 18, 17, 16, 18, 23, 25, 25, 22, 18, 15, 13, 11, 12, 15, 20, 18],
target = document.getElementById('test');

for (var i = 0; i < arr1.length; i++) {
var elem = document.createElement('span'),
text = document.createTextNode(arr1[i]);
elem.appendChild(text);
if (arr1[i] < 15) {
elem.style.color = 'green'
} else if (arr1[i] > 20) {
elem.style.color = 'red'
} else {
elem.style.color = 'orange'
}
target.appendChild(elem);
}​

JS Fiddle demo

我使用纯 JavaScript,因为我看不到 $(this) 指的是什么,而且简单地使用已知变量来演示似乎更容易。

我使用 span 来包含正在评估的文本的原因很简单,因为 textNode 无法直接设置样式,只能使用 元素可以有一个style属性。

关于javascript - 为各个数组元素分配不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13546541/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com