javascript RGB转换为HEX十六进制

本文参考了张鑫旭的javascript Hex十六进制与RGB颜色的相互转换http://www.zhangxinxu.com/wordpress/2010/03/javascript-hex-rgb-hsl-color-convert/

今天用取色器取颜色的时候,发现在chrome中显示如下

所以需要对取得的数据进行转换。

 1 Sys.rgbToHex = function(color) {
 2         var arr = [],
 3             strHex;
 4         if (/^(rgb|RGB)/.test (color)) {
 5             arr = color.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(",");
 6             strHex = '#' + ((1 << 24) + (arr[0] << 16) + (arr[1] << 8) + parseInt(arr[2])).toString(16).substr(1);
 7         } else {
 8             strHex = color;
 9         }
10         return strHex;
11 };

在计算十六进制值的时候,使用的是左移运算符。

左移运算符表示将一个数的二进制形式向前移动,尾部补0。

转载于:https://www.cnblogs.com/yaolingyan/p/5210895.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值