我正在使用https://gist.github.com/Caged/6407459链接中提供的代码。
SVG生成良好,并显示在浏览器上。但是,我无法在此代码中使用D3的.transition和.on函数。这些功能可以与nodejs一起使用吗?

最佳答案

链接到的要旨是用于创建静态SVG标记并将其发送给客户端。因此,客户端(浏览器)仅在没有任何Javascript的情况下获取SVG标记。您不能将事件处理程序绑定(bind)到服务器上的标记。该任务必须由客户端上的浏览器完成。您将必须向客户端发送一些javascript代码。

至于过渡,由于D3通过javascript实现过渡,因此这些过渡也不会发送给客户端。有多种方法可以使用可在服务器上呈现的CSS3和SMIL来对SVG进行动画处理,但我怀疑将代码发送到客户端以获取所需的那种动画会更容易。

您要尝试执行的操作类似于在Illustrator或Inkscape中打开渲染的SVG,并询问过渡和回调是否仍然有效。

10-04 15:29
查看更多