2012-11-13 27 views
0

我正在做一个循环函数来制作圆圈,我决定把这些圆圈连接到对象之间的画线上,所以,第一个圆圈就是绘画,我应该得到这个对象的'cx'和'cy',我会开始画线。如何获得最后一个元素(对象),在Raphael的位置细节?

为此,在jquery的情况下,我们可以使用':last'选择器得到最后一个元素,我尝试使用raphael,任何一个帮助我获得每个图形的最后一个元素。

我的功能:

var paper = new Raphael('paper',500,500); 
var circle1 = paper.circle(50,50,50).attr({fill:'green'}); 

var circle2 = paper.circle(200,50,50).attr({fill:'red'}); 

$(paper.node,':first').click(function(){ 
    alert(this.atrr('x')); 
}) 


$(paper.node,':last').click(function(){ 
    alert(this.atrr('x')); 
}) 

jsfiddle here

回答

1

你的函数没有正确设置好的,你应该使用这样的:

http://jsfiddle.net/S6REC/

$('circle:first',paper.node).click(function(){ 
    alert($(this).attr('cx')); 
}) 


$('circle:last',paper.node).click(function(){ 
    alert($(this).attr('cx')); 
}) 
+0

还是你缺少分号 – Jai

1

@ 3gwebtrain

这里

var paper = new Raphael('paper',500,500); 
var circle1 = paper.circle(50,50,50).attr({fill:'green'}); 
var circle2 = paper.circle(180,50,50).attr({fill:'red'}); 

jQuery(function($){ 

    var c1 = $('circle:first').attr("cx"); 
    var c2 = $('circle:last').attr("cx"); 
    $('circle:first').click(function(){ 
     alert(c1); 
    }); 
    $('circle:last').click(function(){ 
     alert(c2); 
    }); 

}); 

或找到小提琴:

试试这个http://jsfiddle.net/Mg39Z/5/

相关问题