我正在使用链接 https://gist.github.com/Caged/6407459 中提供的代码。 SVG 生成良好并显示在浏览器上。但是我无法在此代码中使用 D3 的 .transition 和 .on 函数。这些功能可以与nodejs一起使用吗?
最佳答案
您链接到的要点旨在创建静态 SVG 标记并将其发送到客户端。因此,客户端(浏览器)仅获取 SVG 标记,而没有任何 Javascript。您不能将事件处理程序绑定(bind)到服务器上的标记;该任务必须由客户端的浏览器完成。您必须向客户端发送一些 JavaScript 代码。
至于转场,由于 D3 通过 javascript 实现转场,因此这些转场也不会发送到客户端。有多种方法可以使用 CSS3 和 SMIL 对 SVG 进行动画处理,这些方法可以在服务器上呈现,但我怀疑将代码发送到客户端以获得所需的动画类型会更容易。
您想要做的事情类似于在 Illustrator 或 Inkscape 中打开渲染的 SVG,并询问过渡和回调是否仍然有效。
关于node.js - D3 转换可以在 Nodejs 上运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27944294/