我正在使用Raphael.js创建动态画布元素,但是我需要在按下元素时更改颜色。 我只是将click事件附加到每个特定的圆圈上,但是如何更改按下的元素的颜色?
paper = Raphael("canvas", 500, 500);
circs = paper.set();
for (i = 0; i < 21; ++i)
{
opa = ran(3,10)/10;
circs.push(paper.circle(ran(0,500), ran(0,500), ran(13,30)).attr({"fill-opacity": opa,
"stroke-opacity": opa }).click(function(){
$("#toggle").click();
//Change color?
}));
}
答案 0 :(得分:0)
我从未使用过Raphael,但与其他任何jquery对象一样,你应该在对象范围内使用$(this)。从Raphael文档中我看到你需要更改fill属性,所以你的代码应该是
$(&#34;#肘节&#34)。单击(); $(this).attr(&#34; fill&#34;,&#34;#f00&#34;);
希望有所帮助
答案 1 :(得分:0)
不太清楚切换的位置,如果你需要的话可以帮助你制作一个jsfiddle。
通常你会做类似
的事情paper.circle(x,y,r).click(function(){
this.attr({ fill: "blue", opacity: "0.5" });
});