如果我有像http://raphaeljs.com/ball.html之类的项目,如何通过DOM修改它,以更改特定实例的颜色?
EX:
Raphael.fn.ball = function (x, y, r, hue) {
hue = hue || 0;
return this.set(
this.ellipse(x, y + r - r / 5, r, r / 2).attr({fill: "rhsb(" + hue + ", 1, .25)-hsb(" + hue + ", 1, .25)", stroke: "none", opacity: 0}),
this.ellipse(x, y, r, r).attr({fill: "r(.5,.9)hsb(" + hue + ", 1, .75)-hsb(" + hue + ", .5, .25)", stroke: "none"}),
this.ellipse(x, y, r - r / 5, r - r / 20).attr({stroke: "none", fill: "r(.5,.1)#ccc-#ccc", opacity: 0})
);
};
function drawBall(div_id, color) {
var X = Raphael(div_id), x = 100, y = 80, r = 50;
X.ball(x, y, r, color);
}
我在文档中创建了一个“Ball”(document.write(active_div,0.3459912),现在我想更改颜色。
使用相同的div调用drawBall,只需在DIV中创建另一个“球”。
答案 0 :(得分:1)
尝试
var hue = hue;
X.attr("fill", r(.3,.25) white-" + hue);
您可以使用yellow
之类的任何颜色或#00CC33
之类的颜色代码作为色调
Demo。
答案 1 :(得分:0)
这个怎么样?
X.attr("fill", newColor);
其中newColor
是您要将其颜色更改为变量的变量的名称。