当前位置: 首页 > news >正文

js 颜色转换,RGB颜色转换为16进制,16进制颜色转为RGB格式

 颜色转换,RGB颜色转换为16进制,16进制颜色转为RGB格式,可以自己设置透明度。

//十六进制颜色值的正则表达式
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
/*RGB颜色转换为16进制*/
String.prototype.colorHex = function () {var that = this;if (/^(rgb|RGB)/.test(that)) {var aColor = that.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(",");var strHex = "#";for (var i = 0; i < aColor.length; i++) {var hex = Number(aColor[i]).toString(16);if (hex === "0") {hex += hex;}strHex += hex;}if (strHex.length !== 7) {strHex = that;}return strHex;} else if (reg.test(that)) {var aNum = that.replace(/#/, "").split("");if (aNum.length === 6) {return that;} else if (aNum.length === 3) {var numHex = "#";for (var i = 0; i < aNum.length; i += 1) {numHex += (aNum[i] + aNum[i]);}return numHex;}} else {return that;}
};
/*16进制颜色转为RGB格式*/
String.prototype.colorRgb = function (opacity) {var sColor = this.toLowerCase();if (sColor && reg.test(sColor)) {if (sColor.length === 4) {var sColorNew = "#";for (var i = 1; i < 4; i += 1) {sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));}sColor = sColorNew;}//处理六位的颜色值var sColorChange = [];for (var i = 1; i < 7; i += 2) {sColorChange.push(parseInt("0x" + sColor.slice(i, i + 2)));}return "rgba(" + sColorChange.join(",") + "," + opacity + ")";} else {return sColor;}
};//调用方法:
"#f00".colorHex()  //'#ff0000'
'#f00'.colorRgb(0); //'rgba(255,0,0,0)'

http://www.lryc.cn/news/276098.html

相关文章:

  • uniapp中用户登录数据的存储方法探究
  • 引导过程与服务控制
  • 《矩阵分析》笔记
  • 『App自动化测试之Appium应用篇』| Appium常用API及操作
  • VSCode搭建 .netcore 开发环境
  • python 写自动点击爬取数据
  • CSDN博客重新更新
  • 《剑指 Offer》专项突破版 - 面试题 5 : 单词长度的最大乘积(C++ 实现)
  • 【Java集合篇】HashMap的get方法是如何实现的?
  • Java学习苦旅(二十二)——MapSet
  • 【Linux Shell】12. 文件包含
  • 前端-基础 常用标签-超链接标签( 锚点链接 )
  • 2024--Django平台开发-基础信息(一)
  • C++力扣题目--94,144,145二叉树递归遍历
  • 开源游戏引擎:创造无限可能 | 开源专题 No.56
  • MyBatisPlus学习一:快速入门
  • 2024最新外贸建站:ChemiCloud主机购买使用及自建外贸独立站教程
  • 校招社招,认知能力测验,③如何破解语言常识类测试题?
  • 了解一下InternLM2
  • 关于使用统一服务器,vscode和网页版jupyter notebook的交互问题
  • Linux22.04系统安装显卡驱动,cuda,cudnn流程
  • 【常考简答题】操作系统
  • Large Language Models Paper 分享
  • 微信小程序实战-01翻页时钟-1
  • BigDecimal的性能问题
  • Defi安全-Monox攻击事件Foundry复现
  • 大二上总结和寒假计划
  • 使用 pdfh5 实现 pdf 预览功能
  • HttpRunner辅助函数debugtalk.py
  • PC端扫描小程序二维码登录