我试图在 Raphael 中悬停一个带有路径和文本的集合。在悬停时,我只需要更改路径的颜色,而不是文本。目前我的代码不知道哪个集合被悬停并且仅更改数组的最后一个元素。
这可能是一个愚蠢的错误,但我很难过:)
这是我的小提琴:http: //jsfiddle.net/Kiaaanabal/znacD/1/
function hexHoverIn() {
hex.attr({fill: '#00411a'});
console.log("Hovering Set" + i);
} //hexHoverIn
function hexHoverOut() {
hex.attr({gradient: '70-#004838-#028151'});
} //hexHoverOut
var hexArray = new Array();
for(var i = 0; i < hexData.length; i++) {
var hex = paper.path(hexData[i].pathData);
hex.attr({rotation: hexData[i].rotation, gradient: '70-#004838-#028151', stroke: '#CFD4D7', 'stroke-width': 5, cursor: 'pointer' });
var hexText = paper.text(hexData[i].xPos, hexData[i].yPos, hexData[i].text);
hexText.attr({fill: '#fff', 'font-size': 10, 'font-family': 'Arial', cursor: 'pointer'});
hexArray[i] = paper.set();
hexArray[i].push(hex, hexText).hover(hexHoverIn, hexHoverOut);
}