使用RGBA生成器时出现问题

时间:2015-01-02 17:23:44

标签: jquery jquery-ui generator rgba

我正在尝试制作RGBA发生器。我使用了这段代码,但不幸的是它是RGB,而不是RGBA我的意思是我不知道如何添加不透明度属性。你能帮我完成这项任务吗?这是我获得代码的网站:http://jqueryui.com/slider/#colorpicker

<script>
function hexFromRGB(r, g, b) {
    var hex = [
        r.toString(16),
        g.toString(16),
        b.toString(16)
    ];
    $.each(hex, function(nr, val) {
        if (val.length === 1) {
            hex[nr] = "0" + val;
        }
    });
    return hex.join("").toUpperCase();
}

function refreshSwatch() {
    var red = $("#red").slider("value"),
        green = $("#green").slider("value"),
        blue = $("#blue").slider("value"),
        hex = hexFromRGB(red, green, blue);
    $("#swatch").css("background-color", "#" + hex);
}
$(function() {
    $("#red, #green, #blue").slider({
        orientation: "horizontal",
        range: "min",
        max: 255,
        value: 127,
        slide: refreshSwatch,
        change: refreshSwatch
    });
    $("#red").slider("value", 255);
    $("#green").slider("value", 140);
    $("#blue").slider("value", 60);
});
</script>

1 个答案:

答案 0 :(得分:0)

你不应该重新计算颜色。 CSS可以理解颜色rgb()rgba()hsl()

的功能
$("#swatch").css("background-color", "rgb(" + red + "," + green + "," + blue + ")");