1

私がホバー状態を持っているraphaeljsを使用して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);
    })
});
4

1 に答える 1

0

テキスト要素のpointer-events属性を に設定してみてください。 ドキュメント: http://www.w3.org/TR/SVG/interact.html#PointerEventsPropertynone

于 2012-04-17T12:33:17.177 に答える