我在节点数组上有一个循环,我试图将每个节点的名称显示为屏幕上某些 Raphael 元素的工具提示。
这是我的代码:
for(var i=0; i<nodes.length; i++){
paper.rect(nodes[i].getX(), nodes[i].getY(), nodes[i].width, nodes[i].getHeight())
.attr({fill:nodes[i].getColor(), "fill-opacity": 1}).mouseover(function () {
this.animate({"fill-opacity": .4}, 500);
this.attr({title:nodes[i].name});
}).mouseout(function () {
this.animate({"fill-opacity": 1}, 500);
}).drag(move, dragstart, dragend);
}
但是,.mouseover 函数中的节点[i] 是未定义的。(为什么?!)我可以像 .mouseover(nodes[i]) 一样将它传递给函数吗?那我该怎么用呢?