这是我正在努力以编程方式使特定量的十六进制颜色变亮或变暗的功能.只需输入一个字符串就像"3F6D2A"color(col)和一个base10整数(amt)一样,可以减轻或变暗.要变暗,传入负数(即-20).
我这样做的原因是因为我发现的所有解决方案,到目前为止,它们似乎使问题过于复杂.而且我觉得只需几行代码即可完成.如果您发现任何问题,请告诉我,或者进行任何调整以使其加速.
function LightenDarkenColor(col,amt) {
col = parseInt(col,16);
return (((col & 0x0000FF) + amt) | ((((col>> 8) & 0x00FF) + amt) << 8) | (((col >> 16) + amt) << 16)).toString(16);
}
Run Code Online (Sandbox Code Playgroud)
对于开发使用,这里是一个更容易阅读的版本:
function LightenDarkenColor(col,amt) {
var num = parseInt(col,16);
var r = (num >> 16) + amt;
var b = ((num >> 8) & 0x00FF) + amt;
var g = (num & 0x0000FF) + amt;
var newColor = g | (b << 8) …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种工具或算法来将HSL颜色转换为RGB.在我看来,HSL并没有被广泛使用,所以我没有太多运气寻找转换器.
我正在寻找从RGB到HSV的色彩空间转换器,特别是对于两个色彩空间的0到255范围.
我需要准确地将HSB转换为RGB,但我不知道如何解决将小数转换为整数而不进行舍入的问题.这是我在colorpicker库中使用的当前函数:
HSBToRGB = function (hsb) {
var rgb = { };
var h = Math.round(hsb.h);
var s = Math.round(hsb.s * 255 / 100);
var v = Math.round(hsb.b * 255 / 100);
if (s == 0) {
rgb.r = rgb.g = rgb.b = v;
} else {
var t1 = v;
var t2 = (255 - s) * v / 255;
var t3 = (t1 - t2) * (h % 60) / 60;
if (h == 360) h = 0;
if …Run Code Online (Sandbox Code Playgroud) 有没有人知道javascript中将RGB颜色转换为HSV颜色格式的函数?
(或jQuery)
我在http://www.mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript上找到了这个RGB到HSL脚本.我找不到任何其他小的体面的.问题是这段代码甚至不起作用.有谁知道为什么?(我不知道一点颜色数学,但也许它正在返回补充?)
function rgbToHsl(r, g, b){
r /= 255, g /= 255, b /= 255;
var max = Math.max(r, g, b), min = Math.min(r, g, b);
var h, s, l = (max + min) / 2;
if(max == min){
h = s = 0; // achromatic
}else{
var d = max - min;
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
switch(max){
case r: h = (g - …Run Code Online (Sandbox Code Playgroud) 我可以将HSB颜色转换为HSL吗?
Photoshop在其颜色选择器中显示HSB颜色.HSL颜色可以在CSS中使用.
我试过这个JS:
function hsb2hsl(h, s, b) {
return {
h: h,
s: s,
l: b-s/2
}
}
而hsb2hsl(0, 100, 50).l == 0不是25
更新:如果不转换HSB→RGB→HSL,我可以这样做吗?
我想更改<input type="color"/>
我尝试通过 javascript 执行此操作的一个属性,但目前我找不到更改属性的方法/属性,该属性在下图中用红色圆圈标记,例如将值设为 120 .
我想获得所有CSS声明的所有背景和颜色属性值.
例如:
body {
background: #fff;
}
.aaa {
background: #dedede;
color: #000
}
.text {
color: #333;
padding: 10px
}
Run Code Online (Sandbox Code Playgroud)
我想获得这样的输出,并且这些属性的值需要存储在数组中.
body {
background: #fff;
}
.aaa {
background: #dedede;
color: #000
}
.text {
color: #333;
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用jQuery来做到这一点.我可以得到一个特定类的背景属性值,如.aaa或.text.我如何获得所有类的值?
$('#btn-invert').on('click', function() {
var color = $("body").css("background");
// var test = invertColor("#00a3fe");
console.log(color);
});
Run Code Online (Sandbox Code Playgroud)