使用带或不带 Jquery 的 javascript,我需要根据开始和结束颜色创建颜色渐变。这可以通过编程来完成吗?
结束颜色只会是开始颜色的较暗阴影,并且它用于无序列表,我无法控制 li 项目的数量。我正在寻找一种解决方案,允许我选择开始和结束颜色,将十六进制值转换为 RGB,以便可以在代码中对其进行操作。起始 RGB 值按根据项目数量计算的步长值递增。
因此,如果列表有 8 个项目,则需要分 8 个步骤递增单独的红绿蓝值才能获得最终颜色。有没有更好的方法来做到这一点,如果有的话,我在哪里可以找到一些示例代码?
我创建了一个 JS 库,RainbowVis-JS来解决这个普遍问题。您只需使用设置项目数量setNumberRange
并使用设置开始和结束颜色setSpectrum
。然后你可以得到十六进制颜色代码colourAt
.
var numberOfItems = 8;
var rainbow = new Rainbow();
rainbow.setNumberRange(1, numberOfItems);
rainbow.setSpectrum('red', 'black');
var s = '';
for (var i = 1; i <= numberOfItems; i++) {
var hexColour = rainbow.colourAt(i);
s += '#' + hexColour + ', ';
}
document.write(s);
// gives:
// #ff0000, #db0000, #b60000, #920000, #6d0000, #490000, #240000, #000000,
欢迎您查看该库的源代码。 :)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)