1/1页1 跳转到查看:1072
发新话题 回复该主题

RGB颜色值转HTML十六进制(HEX)代码的JS函数

RGB颜色值转HTML十六进制(HEX)代码的JS函数

1. 测试一下代码发芽网对论坛的支持情况(BBcode功能)Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
2. 不知道这个函数有没有更好的实现方式Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
JavaScript语言: RGB颜色值转HTML十六进制(HEX)代码的JS函数Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
//转到固定长度的十六进制字符串,不够则补0Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
function zero_fill_hex(num, digits) {Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  var s = num.toString(16);Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  while (s.length < digits)Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
    s = "0" + s;Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  return s;Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
}Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
//妈的,怎么都没搜到怎么用javascript找出一个背景色的数值,只好自己解析Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
function rgb2hex(rgb) {Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  //nnd, Firefox / IE not the same, fxckŸ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  if (rgb.charAt(0) == '#')Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
    return rgb;Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  var n = Number(rgb);Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  var ds = rgb.split(/\D+/);Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  var decimal = Number(ds[1]) * 65536 + Number(ds[2]) * 256 + Number(ds[3]);Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
  return "#" + zero_fill_hex(decimal, 6);Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
}Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥
Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥

TOP

 

回复:RGB颜色值转HTML十六进制(HEX)代码的JS函数

嗯,好像不错哦,呵Ÿ×±ZbcCn­bbs.szblogs.come,W›B¯Ïªå¥

TOP

 
1/1页1 跳转到
发表新主题 回复该主题