RGB和16进制互转 using javascript
【代码】RGB和16进制互转 using javascript。
·
picker.rgbToHex = function(hexColor) { // RGB转换16进制
if (/^rgb\((\d+), ?(\d+), ?(\d+)\)$/i.test(hexColor)) {
var red = parseInt(RegExp['$1']).toString(16)
, green = parseInt(RegExp['$2']).toString(16)
, blue = parseInt(RegExp['$3']).toString(16)
, hexs = [red, green, blue]
;
for (var i = 0; i < 3; i++) {
if (hexs[i].length === 1) {
hexs[i] = '0'+hexs[i];
}
}
return '#'+hexs.join('');
}
return hexColor;
}
picker.hexToRgb = function(color) { // 16进制转换RGB
if (!color || color.substr(0,1) != '#') return color;
if(color.length === 4){
var newcolor = ['#'];
for(var i = 1; i < 4; i += 1) {
newcolor.push(color.slice(i, i+1).concat(color.slice(i, i+1)));
}
color = newcolor.join('');
}
var rgb = [];
for(var i = 1; i < 7; i += 2) {
rgb.push(parseInt("0x"+color.slice(i, i+2)));
}
return 'rgb('+rgb.join(',')+')';
};
更多推荐
所有评论(0)