将数组转换为context.fillColor的字符串?

时间:2014-12-20 15:52:15

标签: javascript string canvas

我想在画布上创建随机粒子。但是,我无法为每个粒子提供随机确定的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] + ')"';

1 个答案:

答案 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()