如何在IE中使用HTML5 canvas元素?

时间:2009-08-26 05:24:34

标签: internet-explorer-8 html5 canvas

我正在尝试使用HTML5画布元素绘制一些圆弧和圆圈 - 这在FF中完美运行,但IE8似乎不支持它。

现在,存在Javascript库,似乎使IE8与Canvas配合良好。 An example can be found here

我已经阅读了他们的全部资料,但我无法理解他们是如何让Canvas与IE8一起工作的。有人可以对所使用的方法有所了解吗?

6 个答案:

答案 0 :(得分:94)

该页面正在使用excanvas - 一个使用IE的VML渲染器模拟canvas元素的JS库。

请注意,在Internet Explorer 9中,the canvas tag is supported natively!有关详细信息,请参阅MSDN docs

答案 1 :(得分:8)

您可以尝试fxCanvas:https://code.google.com/p/fxcanvas/

它实现了闪存垫片中的几乎所有Canvas API。

答案 2 :(得分:4)

您可以使用新发布的适用于IE的Chrome Frame插件,但它要求HTML 5网站包含启用该插件的特殊元标记。

http://code.google.com/chrome/chromeframe/

Chrome Frame似乎使用了Explore Canvas(excanvas.js)。

答案 3 :(得分:2)

目前,ExplorerCanvas是模拟IE6,7和8的HTML5画布的唯一选项。你的表现也是正确的,这是非常糟糕的。

我发现了一个粒子模拟器,可以对谷歌Chrome,Safari和Firefox中真正的HTML5画布处理与IE中的ExplorerCanvas之间的差异进行基准测试。结果显示,支持canvas标记的主要浏览器比使用ExplorerCanvas的IE中的模拟HTML5快20到30倍。

我怀疑任何人都会经历创建替代方案的努力,因为1)excanvas.js就像它获得的干净编码一样2)当IE9发布时,所有主流浏览器最终将支持canvas对象。希望我们能在一年内获得IE9

Eric @ www.webkrunk.com

答案 4 :(得分:2)

如果您需要使用IE8,可以尝试使用此JavaScript库进行矢量图形处理。这就像解决IE8的“画布”和“SVG”不兼容性一样。

Raphaël

我刚刚在一个快速示例中尝试它并且它正常工作。我不知道源代码有多清晰,但我希望它对你有所帮助。正如他们在网站上所说,图书馆与非常老的探险家兼容。

  

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

答案 5 :(得分:0)

我刚刚使用flashcanvas,我就是这样做的。如果您遇到问题,请务必阅读警告和诸如此类的内容。特别是,如果您动态创建canvas元素,则需要显式初始化它们:

if (typeof FlashCanvas != "undefined") {
    FlashCanvas.initElement(canvas);
}