如果颜色值为十六进制,则使用jquery或javascript设置边框不透明度

如果颜色值为十六进制,则使用jquery或javascript设置边框不透明度,javascript,jquery,css,Javascript,Jquery,Css,我动态地获得边框宽度、边框颜色 我必须设置边框的不透明度。但是边框颜色值是十六进制格式的 var borderCSS = { border: borderWidth + "px solid "+borderColor}; 输出为: border:10px solid #cccccc; 我不知道在这种情况下如何使用jquery 或者javascript.在这种情况下,您必须将十六进制颜色转换为RGB。我刚刚将十六进制转换为RGB,然后使用您的代码生成颜色属性: var borderColor

我动态地获得边框宽度、边框颜色

我必须设置边框的不透明度。但是边框颜色值是十六进制格式的

var borderCSS = { border: borderWidth + "px solid "+borderColor};
输出为:

 border:10px solid #cccccc;
我不知道在这种情况下如何使用
jquery

或者
javascript.

在这种情况下,您必须将十六进制颜色转换为RGB。我刚刚将十六进制转换为RGB,然后使用您的代码生成颜色属性:

var borderColor ="#cccccc";
borderWidth=3;
function hexToRgb(hex) {
    var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
    return result ? {
        r: parseInt(result[1], 16),
        g: parseInt(result[2], 16),
        b: parseInt(result[3], 16)
    } : null;
}
R = hexToRgb(borderColor).r;
G = hexToRgb(borderColor).g;
B = hexToRgb(borderColor).b;
var borderCSS = "border: "+borderWidth+"px solid rgba("+R+", "+G+", "+B+", "+.5+")";
.5是不透明度值

使用css()方法设置边框不透明度。 尝试使用以下代码

$(document).ready(function(){
    var borderWidth='10';
    var borderColor='#CCCCCC';
    var borderCSS=borderWidth+'px solid '+borderColor;
    $('h1').css('border',borderCSS);
});

或者参考此

是否有名为
hexToR()的内置函数?我测试了代码,它工作得很好。borderCSS是一个字符串变量,您只需将borderCSS设置为DIV的style属性。