Spectrum Color选取器未在平面模式下设置颜色和Alpha值

时间:2015-07-14 09:41:00

标签: javascript jquery jquery-plugins color-picker color-palette

我正在使用光谱颜色选择器jquery插件,我正在尝试将颜色和alpha值设置为插件,但默认情况下,当颜色选择器打开并且不选择滚轴中的颜色和alpha时,默认情况下它会选择左角颜色。

$container.find('#color-palette').spectrum({
    color: 'rgba(136, 171, 145, 0.5)',
    flat: true,
    showInput: false,
    showAlpha: true,
    showSelectionPalette: false,
    showButtons: false,
    showInput: true
});

在上面的示例中,我已经使用alpha值传递了颜色值,但它没有在颜色选择器中设置传递的值。

如果有任何建议请回复。

谢谢, 戈皮

1 个答案:

答案 0 :(得分:2)

所以我最近遇到了完全相同的问题。我发现颜色选择器的计算是在颜色选择器在屏幕上可见之前完成的,这意味着拾取器的高度和宽度没有设置,导致它默认为左上角。如果你的颜色选择器被隐藏,被动画,或者在初始化或颜色设置时不可见,那么这个错误就会发生。

解决方案是告诉颜色选择器在可见后重新流动。这是命令:

$container.spectrum("reflow");

Here's the documentation for it

你把上面的行放在哪里取决于你的容器初始化的位置和它所处的状态,但是试着把它放在你确定颜色选择器是可见的并且有高度和宽度的地方已经计算好了。