我正在尝试熟悉 raphael.js。我想创建一个美国地图,该地图已经具有每个州的默认颜色并且这些颜色保留在那里。
这是我想出的。
如果您查看 AK,我会加载默认颜色,但如果我突出显示另一个状态,则 AK 的默认颜色会消失。我希望 AK - 和其他州 - 保持相同的颜色。
具体来说,我不知道是什么清除了我的 AK 全彩。我认为当我将鼠标悬停在不同的状态时,该语句的一部分是清除填充覆盖:
for (var state in aus) {
//aus[state].color = Raphael.getColor();
(function (st, state) {
st[0].style.cursor = "pointer";
st[0].onmouseover = function () {
current && aus[current].animate({fill: "#333", stroke: "#666"}, 500) && (document.getElementById(current).style.display = "");
st.animate({fill: st.color, stroke: "#ccc"}, 500);
st.toFront();
R.safari();
document.getElementById(state).style.display = "block";
current = state;
};
})(aus[state], state);
}
有什么想法我可能会出错吗?