使用raphael js创建svg地图,其中我有悬停状态。我怎么试图将国家/地区名称写入地图。我面临的问题是名称成为他们自己的对象并阻止国家,因此当光标直接在文本上方时我松散并单击。有没有办法我可以绘制文本而不是阻止地图。我试过set()但没有成功。
谢谢,
我在下面的内容中没有包含text()或print():
var r = Raphael('map', 1450, 2180);
arr = new Array();
for (var country in paths) {
var obj = r.path(paths[country].path);
countryName = paths[country].name;
color = paths[country].color;
scolor = paths[country].stroke;
obj.attr({fill:color,stroke:scolor,
'stroke-width': 1,
'stroke-linejoin': 'round'});
arr[obj.id] = country;
obj
.hover(function(){
console.log(arr[this.id]);
this.animate({
fill: paths[arr[this.id]].hover
}, 300);
}, function(){
this.animate({
fill: paths[arr[this.id]].color
}, 300);
})
});
答案 0 :(得分:0)
尝试为文本元素设置pointer-events
属性为none
文档:
http://www.w3.org/TR/SVG/interact.html#PointerEventsProperty