javascript - 在 Javascript 或 jQuery 中获取颜色深浅?

标签 javascript jquery colors

JavascriptjQuery 中有没有一种方法可以获取颜色的所有阴影,然后将值返回到 array 中?非常感谢。

类似于:

enter image description here

最佳答案

In color theory ,要获得一种颜色的 shade,您需要降低其亮度,而要获得一种颜色的 tint,您需要增加其亮度。我创建了 a library ,它允许您使用 HSL 颜色模型。使用此颜色模型,您可以采用基色并更改其色调、亮度或饱和度。在这里,您可以使用 getTints 方法获得与您的目的类似的东西:

const { ColorTranslator } = colortranslator;
const container = document.querySelector("#container");
const tints = ColorTranslator.getTints("#93625D", 15);

tints.forEach((c) => {
  const box = document.createElement("div");
  box.style.backgroundColor = c;
  container.appendChild(box);
});

console.log(JSON.stringify(tints));
html,
body {
  height: 100%;
}

#container {
  display: flex;
  height: 100%;
}

#container div {
  height: 100%;
  width: 100%;
}
<script src="https://unpkg.com/colortranslator@1.10.1/web/colortranslator.js"></script>

<div id="container">
</div>

这里有另一个例子,它同时改变颜色的饱和度和亮度以获得每个饱和度的所有色调:

const { ColorTranslator } = colortranslator;
const container = document.querySelector("#container");
const color = new ColorTranslator('hsl(25,100%,50%)');
let box = null;

//---Create elements
for (let row = 0; row < 10; row++) {

  for (let col = 0; col < 10; col++) {

    color
      .setS(row * 10)
      .setL(col * 5 + 30);

    box = document.createElement("div");
    box.style.background = color.HEX;
    box.innerText =
      `R:${color.R}
       G:${color.G}
       B:${color.B}`;
    container.appendChild(box);

  }

}
html,
body {
  height: 500px;
}

body {
  margin: 0;
  padding: 0;
  position: relative;
}

#container {
  display: flex;
  flex-wrap: wrap;
  height: 500px;
  margin: 0 auto;
  position: relative;
  width: 500px;
}

#container div {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  font-family: Arial;
  font-size: 10px;
  height: 10%;
  justify-content: center;
  text-align: center;
  width: 10%;
}
<script src="https://unpkg.com/colortranslator@1.10.1/web/colortranslator.js"></script>

<div id="container">
</div>

关于javascript - 在 Javascript 或 jQuery 中获取颜色深浅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42123270/

相关文章:

javascript - Webpack:是否可以在编译时评估 javascript 表达式?

javascript - 达到某个值时多次更改 jQuery slider 的颜色

php - 如果选择了特定类别,则在管理帖子页面上显示一些内容

java - 如何更改 jFreeChart 栏中特定栏的颜色

javascript - 恩伯斯 : how to display loading spinner and notification messages on model operations

javascript - 使正则表达式成为可重用的函数

jquery - 我如何使用 jQuery 添加 margin-bottom

PHP/JQUERY 标签在编辑按钮点击时循环输入

c# - 将 HSV 循环代码从 Delphi 转换为 C#

ios - 如何告诉 iOS 11 中的 Smart Invert 不要反转我的应用程序颜色并检测它是否已启用?