我正在使用 SVG 和 JavaScript/jQuery 开发交互式界面,我正在尝试在 Raphael 之间做出决定和 jQuery SVG .我想知道
- 两者之间的权衡是什么
- 发展势头似乎在哪里。
我不需要 Raphael 中的 VML/IE 支持,也不需要 jQuery SVG 的绘图功能。我主要对在 SVG Canvas 上创建、动画和操作单个项目的最优雅的方式感兴趣。
最佳答案
我最近同时使用了 Raphael 和 jQuery SVG - 以下是我的想法:
拉斐尔
优点: 一个很好的入门库,很容易用 SVG 快速做很多事情。写得很好,有据可查。大量示例和演示。非常可扩展的架构。非常适合动画。
缺点: 是实际 SVG 标记之上的一层,使得使用 SVG 做更复杂的事情变得困难 - 例如分组(它支持集合,但不支持组)。在编辑现有元素时效果不佳。
jQuery SVG
优点:一个 jquery 插件,如果你已经在使用 jQuery。写得很好,有据可查。大量示例和演示。支持大多数 SVG 元素,允许轻松原生访问元素
缺点:架构不如 Raphael 可扩展。有些事情可以更好地记录(例如配置 SVG 元素)。在编辑现有元素时效果不佳。动画依赖于 SVG 语义 - 这不是很好。
SnapSVG作为 Raphael 的纯 SVG 版本
SnapSVG 是 Raphael 的继任者。它仅在支持 SVG 的浏览器中受支持,并且几乎支持 SVG 的所有功能。
结论
如果您要快速轻松地做某事,那么 Raphael 是一个简单的选择。如果您要做更复杂的事情,我选择使用 jQuery SVG,因为我可以比使用 Raphael 更容易地操作实际标记。如果你想要一个非 jQuery 的解决方案,那么 SnapSVG 是一个不错的选择。
关于javascript - jQuery SVG 与 Raphael,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/588718/