我在互联网上找到了一个甚至可以与IE6一起使用的矢量库!
http://raphaeljs.com/index.html
太奇妙了.
现在我的问题是它比即将推出的HTML5
在互联网上的所有IE用户摆脱他们的旧浏览器之前,它甚至会更长,这样我们甚至可以证明使用HTML5
我只是坚持标准,但由于MS的浏览器开发速度缓慢,这个问题需要花费太长时间.
思考?
Raphael是一个矢量图形库,使用SVG完成,而HTML5 canvas是位图图形.
如果你想做矢量图形,我认为与Raphael相比可能是"just"画布的一个很好的选择.正如你所说,canvas并不适用于IE,它可能需要一段时间才能得到本机支持.如果拉斐尔做你需要的,没有特别的理由不使用它.
请注意,还有其他的库:Excanvas,使用VML模拟IE的画布(据我所知),还有一些其他人使用Silverlight和Flash做同样的事情,但我忘记了他们的名字.
还有Dojo,它有一个用于在易于使用的界面后面抽象画布用法的组件,它也支持IE.
在所有浏览器中使用本机画布不会使库过时,因为库通常会抽象出一些画布复杂性,使用起来更容易.
您想要的是Google的SVGWeb(http://code.google.com/p/svgweb/).它使IE兼容SVG,这是标准,并且所有其他主流浏览器已经支持.换句话说,正如谷歌所说,"使用库加上本机SVG支持,您可以立即锁定现有已安装网站的约95%."
您可以使用http://code.google.com/p/explorercanvas/在IE中实现HTML5 Canvas Standard.你要做的就是添加:
Canvas和SVG之间的区别解释如下:
SVG和canvas并不是真正可互换的技术.SVG是一种保留模式图形,其中所有内容都是从一个相当抽象的模型(SVG文档)中提取的.另一方面,Canvas是一种立即模式图形,没有模型,客户端(JavaScript)必须处理重绘,动画等.