如何访问raphael创建的纸质对象?

时间:2016-01-07 23:54:35

标签: javascript svg raphael

我正在使用HTML显示进行一些系统发育分析。我创建了一个div,这个可爱的javascript包名为jsPhyloSVG,它在该div中为我绘制了一棵漂亮的树。该软件包使用raphael进行绘图,但它并没有将raphael paper对象返回给我。我想使用raphael对此图片添加一些内容,但我不知道如何,因为我没有引用该paper对象。我可以访问raphael生成的svg,但有没有办法向后工作以查找paper

如果这不起作用,我总是可以使用jquery直接将圆或路径对象添加到svg,对吗?

1 个答案:

答案 0 :(得分:1)

好吧,经过一天的大部分时间,我把头撞到墙上,我已经解决了我的问题。事实证明,如果可以找到对象本身的引用,则可以重用其他库创建的<div> <img src="3.jpg" alt="Smiley face"> <h2>hello</h2> </div> 对象。对于使用jsPhyloSVG的任何其他人,可以通过以下方式找到:

- First 
  @Autowired, 
 - Second in constructor 
 @Autowired
 constructor(Object object)
 - other
 @Autowired
 setObjectMehod(Object object)

然后您可以照常进行:paper

我认为Ian的目标是,您无法重复使用raphael创建的 svg 。我总是可以访问该元素,但是使用jQuery来附加圆形元素并不起作用。

它们将显示在检查面板中的svg对象中,但不会显示在屏幕上。在另一个问题here中讨论了一些解决方法,这些问题主要适用于我。然而,他们打破了raphael对象和屏幕上的svg元素之间的联系;大多数鼠标悬停功能都停止工作。