javascript - 如何将颜色百分比更改为 RGB

标签 javascript html css rgb

我创建了从绿色到红色的颜色代码 0-70。现在,我想将颜色 0 - 70 从红色更改为绿色。

function percentToRGB(percent) {
    if (percent === 100) {
        percent = 99
    }
    var r, g, b;

    if (percent < 50) {
        // green to yellow
        r = Math.floor(255 * (percent / 50));
        g = 255;

    } else {
        // yellow to red
        r = 255;
        g = Math.floor(255 * ((50 - percent % 50) / 50));
    }
    b = 0;

    return "rgb(" + r + "," + g + "," + b + ")";
}


function render(i) {
    var item = "<li style='background-color:" + percentToRGB(i) + "'>" + i + "</li>";
    $("ul").append(item);
}

function repeat(fn, times) {
    for (var i = 0; i < times; i++) fn(i);
}


repeat(render, 100);
li {
    font-size:8px;
    height:10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul></ul>

最佳答案

您应该能够在 percentToRGB 函数内切换 gr 变量。这是一个 JSFiddle Link .

所以函数会变成:

function percentToRGB(percent) {
    if (percent === 100) {
        percent = 99
    }
    var r, g, b;

    if (percent < 50) {
        // green to yellow
        g = Math.floor(255 * (percent / 50));
        r = 255;

    } else {
        // yellow to red
        g = 255;
        r = Math.floor(255 * ((50 - percent % 50) / 50));
    }
    b = 0;

    return "rgb(" + r + "," + g + "," + b + ")";
}

关于javascript - 如何将颜色百分比更改为 RGB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46806585/

相关文章:

javascript - 标题标签中的特殊字符

javascript - 如何使用 Phantomjs 设置页面抓取之间的时间间隔

javascript - 我怎样才能有一个打印方法,使用 JavaScript

使用 :checked pseudo class 检查特定单选按钮时 CSS 更改

jquery - 页脚滚动顶部的“返回顶部”

javascript - WMD 编辑器(如 StackOverFlow 使用的编辑器)如何工作?

javascript - Angular 6 - 是否可以在同一页面上使用两个 Angular 元素组件?

html - 是否可以将 HTML 元素固定到另一个元素的底部?

javascript - 背景图像缩放

javascript - 如何使用 javascript 获取像素中左/右/上/下属性的值?