Raphaeljs路径id在一组属性中

时间:2013-09-19 04:38:14

标签: javascript raphael

我正在使用Raphaeljs在地图上工作,我在一个集合中有路径因为我希望所有这些路径具有相同的属性并且一切都很好但是现在我想为每条路径设置一个id而我做了它是一个但属性丢失了,所以我的问题是......有没有办法在一个具有set属性的集合中有一个path.id?感谢

这是文件http://jsfiddle.net/tLSpv/2/

var paper = Raphael(0,0,540, 615);

var newmexico = paper.set();

newmexico.push(
paper.path("M343.249,11.503l-1.658,3.554l-0.474,16.822c0,0-3.554-0.711-5.449-0.711 s-5.686,3.554-5.449,4.265c0.237,0.711-1.895,13.268-1.895,14.215s3.554,4.502,3.317,5.449c-0.237,0.948-0.711,3.554-0.474,4.502 c0.237,0.948,0.711,7.345,0.474,9.477c-0.237,2.132,0.948,11.846-1.658,13.268h42.883v5.449h38.855h37.197V73.103l1.303-1.303V1.239 L340.643,1.18v4.4L343.249,11.503z").node.id = 'colfax';
).attr({    
            fill: '#F7F0EA',
            stroke: '#006599',
            'stroke-width': 1,
            cursor: 'pointer' 
 })

.hover(function () {
 this.animate({fill: '#006599'}, 300);
    },
    function () {
    this.animate({fill: '#F7F0EA'}, 300)
    }
);

1 个答案:

答案 0 :(得分:0)

这是一个建议。在您的属性列表顶部添加Raphaels data()功能。

Exp:

for (var i = 0, i < 5, i++) {
    paper.circle(10 + 15 * i, 10, 10)
         .attr({fill: "#000"})
         .data("i", i)
         .click(function () {
            alert(this.data("i"));
         });
}

这个小例子取自 here data添加或检索与给定密钥关联的给定值。在这种情况下,"i"是一个键,i是值。

这是我为我的Raphael对象分配id的方法。祝你好运