2009-06-04 76 views
11

是否有任何替代HTML5元素的画布可以使用JavaScript来绘制像六边形一样的形状,该工具可用于跨浏览器(包括可怕的IE6)?在Javascript中绘画形状

我一直在使用jQuery和jQuery maphighlight,但它并没有给我足够的可能性来处理第一次呈现后的形状和颜色。

我是否缺少jQuery maphighlight中的某些功能,或者是否有任何其他jQuery或mootools插件,可以为我提供此绘画功能?

回答

25

你应该看看RaphaelJS。它是一个围绕Canvas,SVG和VML(仅用于IE6的SVG之前的IE-only矢量标记语言)的JavaScript,跨浏览器的包装库。使用RaphaelJS,您可以使用JS与广泛的浏览器兼容,生成各种各样的矢量图形。

http://raphaeljs.com/

RaphaelJS也与jQuery非常兼容,并遵循很多相同的呼叫链接,你在jQuery中看到的。这两个成为一对。

1

我总是喜欢那种对javascript有利的端口。你可以找到here这是很好的画东西。也许你可以检查它。它不是jquery的插件,但它非常强大。

它确实使用HTML5 Canvas元素虽然:(

了几个版本前,它只是在新的浏览器的工作。我不知道,如果它已经被移植到了以前的。


我发现的一个其他API使用div进行绘制,如果你想绘制有限的东西,可以使用它,但要小心,当绘图量增加时,HTML的版本会得到一个位重

2

还有着名的画布画家。

http://caimansys.com/painter/

+0

但它工作在IE6? – elzapp 2009-06-04 08:54:09

+0

是的,它确实是先生! – 2009-06-04 09:45:03

2

尝试Raphael

Raphaël目前支持Firefox 3.0+,Safari 3.0+,Opera 9.5+,Chrome 2.0+和Internet Explorer 6.0+。

+0

这看起来很有希望 – elzapp 2009-06-04 08:57:01

1

您也可以使用在Internet Explorer中工作的Ample SDK中的SVG实现。您将获得基于标准的API(DOM Level 2/3)和标记符号(SVG1.2 Tiny)。

这里是一对的例子:

  1. SVG Tiger
  2. SVG+SMIL/DOM