我有一个地图集并且正在使用Raphael.js并且一切都很好,但我正在努力找出通过给定标题在集合中定位元素的方法。
我发起如下。
var MAP_WIDTH = 600;
var MAP_HEIGHT = 600;
var mapContainer = document.getElementById("map");
var map = new Raphael(mapContainer, MAP_WIDTH, MAP_HEIGHT)
var group = map.set();
var regions = {};
var regions = [
{ 'title': "One", 'path': "m651.845 1021.74c-51.0321,-190.505 52.8953,-258.102 -72.0694,-253.37"},
{ 'title': "Two", 'path': "m534.899 632.399c-170.109,0.209524 -108.157,-95.2197 -331.825,-233.531"},
{ 'title': "Three", 'path': "m581.183 601.967c187.821,-0.668381 65.1258,-112.492 192.735,-339.055"}
]
然后按如下方式推送到该组。
regions.forEach(function(region){
group.push(
map.path(region.path).attr({
'title':region.title,
'stroke':"#FF0000",
'fill':"#FFFFFF"
})
);
}
在点击或鼠标悬停事件中,我希望能够定位特定元素,换句话说,点击将改变标题为“One”的元素的填充(无论是否单击“One”,这都是'这'不是解决方案)。我可以通过组[0]来完成,但我可能不知道我正在搜索的项目的索引。
如何定位标题为“One”的组中的特定元素?
谢谢!