javascript - 使用存储在数组中的 JS 颜色值来设置 P5.js Dom 元素的样式

标签 javascript css processing p5.js

我正在 P5.js 中创建 DOM 按钮,我想应用样式。在这种情况下,我想更改背景颜色。通常这将通过这样做来应用。

button.style("background-color", "black");

在我的例子中,我想引用一个已经存储在 JS 数组中的颜色,因为颜色被统一使用,就像这样。

swatch.style("background-color", colArray[0]);

显然这是行不通的,因为样式是从 CSS 应用的。任何建议都是王牌。

我可以在 CSS 中存储颜色并引用样式,但我试图避免双重处理。

JS 的控制台中没有错误消息。只是一个普通的 CSS 问题。

最佳答案

您不能直接使用颜色值,因为它是 CSS 无法理解的对象,但您可以将其格式化为 CSS 可以理解的字符串。在 p5.js 中,您可以使用 red()green()blue() 函数从颜色中获取 RGB 值.

然后一旦你有了这些值,我可以想到两种方法:

方法一:在 CSS 中,使用 rgb()功能。它看起来像这样:

var rgbString = 'rgb(' + red(myColor) + ', ' + green(myColor) + ', ' + blue(myColor) + ')';
myElement.style('background-color', rgbString);

方法二:在 p5.js 中,使用 hex() 函数将 RGB 值转换为十六进制。

var rHex = hex(red(myColor));
var gHex = hex(green(myColor));
var bHex = hex(blue(myColor));
var hexColor = '#' + rHex + gHex + bHex;
myElement.style('background-color', hexColor);

我还没有对此进行测试,因此某些语法可能略有偏差,但希望这能让您大致了解。

关于javascript - 使用存储在数组中的 JS 颜色值来设置 P5.js Dom 元素的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58145050/

相关文章:

javascript - 像在 iOS 7 或 Windows 7 中一样创建牛奶玻璃效果

java - 如何创建一个字符串数组而不在开始时指定其长度?

java - 处理Java : Cursor position of text box off

javascript - 带有 es6 import 的包装函数,不需要变量名(用于 React 高阶组件)

javascript - ExtJS--如何缓存树数据

html - 插入表格时移动按钮

javascript - 用于渐变的 CSS3 Javascript 库?

javascript - HTTPS 站点 : Load an external CSS over HTTP

javascript - 如何在显示隐藏控件后移动 dojo 数据网格

java - 在处理方法中使用 CreateGraphics 输出多页 PDF