我已经使用http://readysetraphael.com/将一些 SVG 转换为 Rapahel
这是生成的代码示例:
...
path6233.attr({id: 'path6233'
...
我查看了 attr 文档,它没有提到 id 作为正确的属性。id 属性也没有添加到 DOM。有没有办法让 raphael 将此 ID 添加到 DOM 以便我可以设置元素的样式?
或者,我可以以某种方式遍历所有路径并轻松地将 id attr 添加到真实的 DOM ID 吗?
我已经使用http://readysetraphael.com/将一些 SVG 转换为 Rapahel
这是生成的代码示例:
...
path6233.attr({id: 'path6233'
...
我查看了 attr 文档,它没有提到 id 作为正确的属性。id 属性也没有添加到 DOM。有没有办法让 raphael 将此 ID 添加到 DOM 以便我可以设置元素的样式?
或者,我可以以某种方式遍历所有路径并轻松地将 id attr 添加到真实的 DOM ID 吗?
我以前没看过 readysetraphael.com —— 这很漂亮。
通过 Raphael 纸元素的 forEach 方法遍历给定 SVG 容器中的所有元素应该相当简单:
var i = 0;
paper.forEach(function (el)
{
el.node.setAttribute("id", "node-" + i++ ) );
});
但我应该问——既然您已经将 SVG 整合到 Raphael 中,为什么不简单地使用 Raphael 以编程方式设置它们的样式?对你的推理的好奇促使我问。
您可以通过调用node
属性来获取底层 DOM 元素的形状,如下所示:
path6233.node.id = 'node-id';