我想在画布上创建随机粒子。但是,我无法为每个粒子提供随机确定的RGB颜色值,而不是读取我的fillStyle。
有人可以帮忙吗?
编辑:JSBIN示例 http://jsbin.com/puworu/4/edit?js,console,output#J:L65
var rgb = [];
rgb.push(Math.round(Math.random()*255));
rgb.push(Math.round(Math.random()*255));
rgb.push(Math.round(Math.random()*255));
context.fillStyle = '"rgb(' + rgb[0] + ',' + rgb[1] + ',' + rgb[2] + ')"';
答案 0 :(得分:2)
这只是一个错字。 ""不应该在那里。它应该是:
//context.fillStyle = '"rgb(' + rgb[0] + ',' + rgb[1] + ',' + rgb[2] + ')"';
context.fillStyle = 'rgb(' + rgb[0] + ',' + rgb[1] + ',' + rgb[2] + ')';
快乐的编码!
编辑:我看过你的jsbin,它总是会抛出大量的错误。
原因是:当您从draw(particles)
第一次调用init()
时,您从init传递了粒子数组。
但是,在setIntervalID = setInterval(function(){draw()})
中没有传递任何参数。解决方案是清除间隔clearInterval(setIntervalID)
或将新数组传递给draw()