如何让SVG与IE一起工作?

时间:2009-09-15 13:04:17

标签: javascript html internet-explorer canvas svg

有没有人知道一个全面的库让SVG与IE一起工作(特别是7和8)?

我想要一些可以包含在我的网页中的Javascript,它会以类似于excanvas为Canvas所做的方式将我的所有SVG静默转换为VML。

5 个答案:

答案 0 :(得分:15)

Google's SVG Web这样做。根据项目网站:

  

SVG Web是一个JavaScript库   在许多浏览器上提供SVG支持,   包括Internet Explorer,Firefox,   和Safari。使用库加   本机SVG支持您可以即时   目标〜现有安装的95%   网络基础。

虽然它被描述为JavaScript库,但它也需要Flash 9+。这通常不是问题,但是如果您在公司环境中使用旧版Flash或工作站上没有Flash,则无法正常工作。

此外,它仍然处于Alpha状态,这可能是一个问题,具体取决于您的项目。

答案 1 :(得分:15)

Raphaël—JavaScript Library可以帮助你。

Raphaël使用SVG W3C推荐和VML作为创建图形的基础,并支持Firefox 3.0 +,Safari 3.0 +,Opera 9.5+和Internet Explorer 6.0+。

修改

还有两个js-libraries使用vml在IE中呈现svgs:

  • Ample SDK(应该可以轻松集成现有的svg文件)
  • 来自Dojo Toolkit的
  • DojoX GFX

答案 2 :(得分:6)

我认为SVGWeb是可行的方法,即使它基于Flash,因为VML对于大量应用来说远远不够快。

答案 3 :(得分:2)

Adob​​e提供脚本来自动检测,安装并将您重定向回原始网站:

http://support.adobe.com/devsup/devsup.nsf/docs/51780.htm

http://www.adobe.com/svg/workflow/autoinstall.html

我在我的网站上使用相当成功。

答案 4 :(得分:0)

更低技术的解决方案是使用类似svg_alike的东西(在此插入利益冲突通知:))。它检查SVG支持,如果没有找到它,它将用PNG替换所有SVG图像。

https://github.com/forwardadvance/svg_alike

您失去了平滑矢量缩放和视网膜支持的优势,但IE8用户无论如何都不太可能使用这些功能。

优点是您不必将图像转换为JavaScript。我认为它为5%的工作提供了80%的价值。