获得与Raphael纸质元素相关联的DOM节点的最有效方法

时间:2012-05-31 04:55:33

标签: raphael

好吧,这让我觉得有点暴躁,因为它看起来应该是直截了当但是......不是吗?

我有一种情况,我使用特定的z-index属性来控制它们的渲染顺序,将多个SVG和div叠加在彼此的顶部。所有这些都很好,但我发现获取给定纸质元素的DOM节点的唯一方法如下:

// given containerID, width, height, and zIndex are in scope
var canvas = Raphael( containerID, width, height );
var tempObject = canvas.rect( 0, 0, 1, 1, 0 ).attr( { fill: 'none', stroke: 'none' } );
var svgNode = tempObject.node.parentNode;
$(svgNode).css( { 'z-index': zIndex } );

这很有效,但显然不够优雅。有人知道如何直接获得论文的svg节点吗?

1 个答案:

答案 0 :(得分:3)

canvas.canvas应该做到这一点。

为避免命名混淆,您可以执行以下操作:

var paper = Raphael( containerID, width, height );
var svgNode = paper.canvas;
相关问题