您可以执行以下操作来使用 Raphael 的 click() 函数,查看DEMO:
这个简单的代码使用click()
函数:
var paper = Raphael("area", 400, 400);
var r = paper.rect(100, 50, 80, 60, 10).attr({fill: 'yellow', stroke: 'red'}),
c = paper.circle(200, 200, 50).attr({fill: 'yellow', stroke: 'red'});
r.click(function() {
// add your console.log if needed
r.attr({fill: 'red', stroke: 'yellow', "stroke-width": 2});
c.attr({fill: 'yellow', stroke: 'red'});
});
c.click(function() {
c.attr({fill: 'red', stroke: 'yellow', "stroke-width": 2});
r.attr({fill: 'yellow', stroke: 'red'});
});
现在,如果您想使用this
,请记住它仅在您在元素创建范围内使用时才有效。您可以为所有元素手动添加此代码,也可以创建几个数组以将元素保留在其中。然后,如果您知道要应用的索引click()
,只需调用它arr[ind].click()
。
编辑:看看这个演示,我用这个。