用javascript获取任意颜色的更亮或更暗颜色值示例代码


Posted in Javascript onJuly 21, 2017

前言

本文主要给大家介绍的是关于利用javascript获取任意颜色更亮或更暗颜色值的相关内容,下面话不多说,来一起看看详细的介绍:

预处理CSS,比如Sass和less可以通过设定一个特定值,让任何颜色变得更亮或者更暗。但是在javascript中却没有这种方法。下面这个方法能在javascript中得到一个更亮或者更暗的值,通过一个给定的十六进制颜色值(比如#F06D06,或者没有#)

示例代码

function LightenDarkenColor(col, amt) {
 
 var usePound = false;
 
 if (col[0] == "#") {
 col = col.slice(1);
 usePound = true;
 }
 
 var num = parseInt(col,16);
 
 var r = (num >> 16) + amt;
 
 if (r > 255) r = 255;
 else if (r < 0) r = 0;
 
 var b = ((num >> 8) & 0x00FF) + amt;
 
 if (b > 255) b = 255;
 else if (b < 0) b = 0;
 
 var g = (num & 0x0000FF) + amt;
 
 if (g > 255) g = 255;
 else if (g < 0) g = 0;
 
 return (usePound?"#":"") + (g | (b << 8) | (r << 16)).toString(16);
 
}
// Lighten
var NewColor = LightenDarkenColor("#F06D06", 20); 

// Darken
var NewColor = LightenDarkenColor("#F06D06", -20);

总结

以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JS array 数组详解
Mar 22 Javascript
JavaScript设置FieldSet展开与收缩
May 15 Javascript
JavaScript CSS修改学习第三章 修改样式表
Feb 19 Javascript
js对象之JS入门之Array对象操作小结
Jan 09 Javascript
javascript常用正则表达式汇总
Jul 31 Javascript
Vue.js进行查询操作的实例详解
Aug 25 Javascript
vue-cli常用设置总结
Feb 24 Javascript
vue配置多页面的实现方法
May 22 Javascript
vue实现学生录入系统之添加删除功能
Jul 11 Javascript
详解如何配置vue-cli3.0的vue.config.js
Aug 23 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
Sep 02 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
Oct 26 Javascript
基于JavaScript实现数码时钟效果
Mar 30 #Javascript
bootstrap多层模态框滚动条消失的问题
Jul 21 #Javascript
基于JavaScript实现无缝滚动效果
Jul 21 #Javascript
基于JavaScript实现选项卡效果
Jul 21 #Javascript
基于JavaScript实现弹幕特效
Aug 27 #Javascript
js实现水平滚动菜单导航
Jul 21 #Javascript
修改 bootstrap table 默认detailRow样式的实例代码
Jul 21 #Javascript
You might like
PHP 代码规范小结
2012/03/08 PHP
浅谈jQuery构造函数分析
2015/05/11 Javascript
FullCalendar日历插件应用之数据展现(一)
2015/12/23 Javascript
jQuery实现的点赞随机数字显示动画效果(附在线演示与demo源码下载)
2015/12/31 Javascript
js拖拽的原型声明和用法总结
2016/04/04 Javascript
AngularJS 所有版本下载地址
2016/09/14 Javascript
Nodejs 和Session 原理及实战技巧小结
2017/08/25 NodeJs
vue-router启用history模式下的开发及非根目录部署方法
2018/12/23 Javascript
vue生命周期与钩子函数简单示例
2019/03/13 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
[48:21]Mski vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
[01:18:31]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第一场 1月10日
2021/03/11 DOTA
Python库urllib与urllib2主要区别分析
2014/07/13 Python
Python实现从百度API获取天气的方法
2015/03/11 Python
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
python:socket传输大文件示例
2017/01/18 Python
Python编程之列表操作实例详解【创建、使用、更新、删除】
2017/07/22 Python
Python中static相关知识小结
2018/01/02 Python
Python中常见的异常总结
2018/02/20 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
python3实现猜数字游戏
2020/12/07 Python
python创建学生成绩管理系统
2019/11/22 Python
Python类反射机制使用实例解析
2019/12/30 Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
2020/01/19 Python
python查看矩阵的行列号以及维数方式
2020/05/22 Python
Python实现播放和录制声音的功能
2020/08/12 Python
python 基于DDT实现数据驱动测试
2021/02/18 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
美国销售第一的智能手机和平板电脑保护壳:OtterBox
2017/12/21 全球购物
Harman Audio官方商店:购买JBL、Harman Kardon、Infinity和AKG
2019/12/05 全球购物
几个常见的软件测试问题
2016/09/07 面试题
迎接领导欢迎词
2014/01/11 职场文书
户外婚礼策划方案
2014/02/08 职场文书
2014年医院党建工作总结
2014/12/20 职场文书
汽车销售员岗位职责
2015/04/11 职场文书
2015迎新晚会开场白
2015/07/17 职场文书