首先,我想说我正在使用Smeegs的Confetti Code,但我在改变颜色方面遇到了问题。他们拥有它有一系列颜色,但我只希望我有两个特定的颜色。
我尝试使用带有如下变量的if语句:
if(Math.random() > .3) {
var coolColor = "002147";
}
else {
var coolColor = "FF6319";
};
使用颜色选择器:
color: "#" + coolColor,
我的问题是我希望两种颜色都显示出来,而不仅仅是一种颜色,JS似乎确实选择了一种颜色,但每次都只选择其中一种颜色。我怎么能这样做有两种颜色?
答案 0 :(得分:0)
检查了Smeegs的五彩纸屑代码,似乎他通过随机化RGBA生成颜色,您可以用这样的颜色替换该行:
var newRGBA;
for (var i = 0; i < mp; i++) {
if(Math.random()>.3){
newRGBA = "rgba(0,21,47,0.7)";
}else{
newRGBA = "rgba(255,63,19,0.7)";
}
particles.push({
x: Math.random() * W, //x-coordinate
y: Math.random() * H, //y-coordinate
r: randomFromTo(5, 30), //radius
d: (Math.random() * mp) + 10, //density
color: newRGBA, //changed this line to our variable
tilt: Math.floor(Math.random() * 10) - 10,
tiltAngleIncremental: (Math.random() * 0.07) + .05,
tiltAngle: 0
});
}
它正在运作:RESULT