在Javascript中绘制形状

时间:2009-06-04 08:27:57

标签: javascript jquery jquery-plugins mootools raphael

对于使用javascript绘制六边形等形状的html5元素画布有什么好的替代方法,它可以跨浏览器工作(包括可怕的IE6)吗?

我一直在使用jQuery和jQuery maphighlight,但它没有给我足够的可能性来在第一次渲染后操纵形状和颜色。

我是否遗漏了jQuery maphighlight中的一些功能,或者是否有其他任何jQuery或mootools插件可以为我提供这种绘画功能?

5 个答案:

答案 0 :(得分:25)

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

http://raphaeljs.com/

RaphaelJS也与jQuery非常兼容,并且跟随你在jQuery中看到的很多相同的调用链。两人组成了一对。

答案 1 :(得分:2)

还有着名的画布画家。

http://caimansys.com/painter/

答案 2 :(得分:2)

尝试Raphael

  

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

答案 3 :(得分:1)

我总是喜欢javascript的优势端口。你可以发现here绘制东西非常好。也许你可以检查一下。它不是jquery的附加组件,但它非常强大。

它确实使用了HTML5 Canvas元素:(

在几个版本之前,它只适用于新的浏览器。我不知道它是否已经移植到以前的那些。


我发现使用div进行绘制的另一个API是this one如果你想绘制有限的东西,可以使用它。但是要小心,因为当绘制量增加时,HTML的结构会变得有点沉重

答案 4 :(得分:1)

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

以下是一对例子:

  1. SVG Tiger
  2. SVG+SMIL/DOM