在raphaeljs中,有没有办法在对象中放置文本以保持翻转状态

时间:2012-04-13 07:16:43

标签: javascript oop svg raphael

使用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);
    })
});

1 个答案:

答案 0 :(得分:0)

尝试为文本元素设置pointer-events属性为none 文档:
http://www.w3.org/TR/SVG/interact.html#PointerEventsProperty