2012-04-12 47 views
2

我是Raphael.js的新手,我无法通过它的id获取对象的引用。Raphael得到和元素的ID

我使用raphael(因为我觉得它:-))在运行时创建圆形按钮。

I,通过<div>儿童创建一个按钮:

<div class="elements"> 
<div>BUTTON HERE<img src="XXX" /></div> 
<div>BUTTON HERE</div> 
<div>BUTTON HERE</div> 
</div> 

然后我用一个形象已经(XXX)现场创建我把里面的每一个我的实例容器的新的图像对象。

问题是,后来一个,我问我的拉斐尔对象回应一个自定义事件(第67行在我的帕斯)。

在我的事件处理程序(线62),我希望能够(第21行与ID集)检索特定image

有关如何通过其ID或其他方法获取我的image元素的任何想法?

我的功能是在这里:http://pastie.org/3775836

预先感谢您的时间和耐心,

Jk_

+0

你可以使用getElementByID而不是getById吗? – Evan 2012-04-12 18:58:57

+0

问题是元素的ID与RAPHAEL一起设置。它在DOM中没有任何适当的ID。 http://raphaeljs.com/reference.html#Element.id – 2012-04-12 19:01:55

+0

请在[jsFiddle](http://www.jsfiddle.net)上设置一个工作示例,以展示您的问题。无论如何,你最好传递元素本身(或形状引用),或者,如果你想对被调用者进行操作 - 请参阅处理程序中的this。 – 2012-04-14 19:33:03

回答

0

为什么不创建一个数组(你的函数之外)。

var array = new Array(arrayLength); 

然后,而不是:

img.id = index; 

使用:

array[ index ] = img; 

现在您可以在阵列中进行查找,然后访问由它们的索引图像。