使用Snap.svg包装SVG-DOM元素

时间:2016-06-14 18:19:54

标签: snap.svg

Snap.svg允许CSS选择器从SVG-DOM元素创建Snap对象。 例如,如何通过 <获取Snap-object myLine 包装SVG-DOM EM> ID

var paper = Snap('#my-svg');
var myLine = paper.select('#my-line');

没关系。

但是如果我们的SVG-DOM元素没有任何ID呢?

如何从具有该元素的SVG-DOM元素创建Snap对象?

// here I use an ID just to get a variable with the pointer to SVG-DOM element
var svg_dom_element = document.getElementById('my-line'); 

var paper = Snap('#my-svg');
var myLine = paper.select(svg_dom_element); // this line of code throws an error

第三行代码应该在这里?

其中一个解决方法是为元素提供随机ID,然后使用paper.select获取Snap对象。但这并不酷。:)

1 个答案:

答案 0 :(得分:2)

你不需要选择它,'select'将采用一个css选择器,而DOM元素不是。

您需要做的就是通过Snap DOM元素,这样更容易:)。

var myLine = Snap(svg_dom_element);