如果颜色值为十六进制,则使用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属性。