我正在使用 SVG 和 JavaScript/jQuery 开发一个交互式界面,我试图在两者之间做出决定Raphael http://raphaeljs.com/ and jQuery SVG http://keith-wood.name/svgRef.html。我想知道
- 两者之间的权衡是什么
- 发展动力似乎就在哪里。
我不需要 Raphael 中的 VML/IE 支持,也不需要 jQuery SVG 的绘图功能。我主要对在 SVG 画布上创建、设置动画和操作单个项目的最优雅的方式感兴趣。
我最近使用了 Raphael 和 jQuery SVG - 以下是我的想法:
Raphael
Pros:一个很好的入门库,可以轻松快速地使用 SVG 做很多事情。写得很好并且有记录。很多例子和演示。非常可扩展的架构。非常适合动画。
Cons:是实际 SVG 标记之上的一层,使得使用 SVG 执行更复杂的操作变得困难 - 例如分组(它支持集合,但不支持组)。对现有元素的编辑效果不佳。
jQuery SVG
Pros:一个 jquery 插件(如果您已经在使用 jQuery)。写得很好并且有记录。很多例子和演示。支持大多数 SVG 元素,允许轻松本地访问元素
Cons:架构不像拉斐尔那样可扩展。有些事情可以更好地记录下来(例如 SVG 元素的配置)。对现有元素的编辑效果不佳。动画依赖于 SVG 语义 - 这并不是那么好。
SnapSVG http://snapsvg.io/作为 Raphael 的纯 SVG 版本
SnapSVG 是 Raphael 的继承者。它仅在支持 SVG 的浏览器中受支持,并且支持 SVG 的几乎所有功能。
结论
如果您想做一些快速而简单的事情,拉斐尔是一个简单的选择。如果您要做一些更复杂的事情,我选择使用 jQuery SVG,因为我可以比使用 Raphael 更轻松地操作实际标记。如果您想要非 jQuery 解决方案,那么 SnapSVG 是一个不错的选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)