【发布时间】:2015-05-31 16:18:38
【问题描述】:
我正在制作一个用户可以选择页面颜色的网站。该网站仅使用两种颜色。背景颜色和其他所有颜色。 (文本、边框和背景颜色在单独的框中。)
我尝试让 Spectrum.js 更改除背景颜色和彩色框上的文本以外的所有颜色。
我正在尝试修改由 ariel 找到的 here 代码。
var initialColor = "#E84E1B";
$("body").css("color", initialColor);
$("divwithfill").css("border-color", initialColor);
function updateColor(element, color) {
$(element).css("color", (color ? color.toHexString() : ""));
}
$("#colorChanger").spectrum({
color: initialColor,
move: function (color) {
updateColor(".output.render", color);
},
hide: function (color) {
updateColor(".output.render", color);
}
});
小提琴: http://jsfiddle.net/mjHUD/31/ 这是在here 中找到的小提琴的副本。我正在尝试将所有 #E84E1B 值更改为用户选择的颜色。
编辑: 指定:我希望用户能够使用 #colorChanger 更改默认为 #E84E1B 的所有 CSS 值。 (包括背景颜色和边框)所有带有#c6c6c6 的CSS 值我希望保持不变。我希望这更有意义。
【问题讨论】:
-
有什么问题?不清楚
-
您可以通过 dynamic stylesheet 使用更新后的 css 值更高效、更灵活地执行此操作(因为您也可以定位伪元素)
-
你是否依赖于使用频谱?
-
不,我不是。这似乎是一个很好的解决方案。
标签: javascript jquery css colors