explorercanvas
canvas是HTML5标准新引入的标签,允许你直接在网页中绘制图形,目前在最新的chrome,firefox,opera,safari都已经支持这个标签,微软表示IE9也会支持HTML5标准,也就意味着IE9也会支持Canvas标签。但是IE6-8是不支持canvas的,现有JS高手提供了一个方案。
关于canvas标签,Mozilla有一篇非常不错canvas教程。
https://developer.mozilla.org/en/Canvas_tutorial
explorercanvas内部实现是采用IE默认支持的VML标准来模拟Canvas,这个JS会在载入时扫描网页内的所有Canvas标签,为这些Canvas导入VML模拟的Canvas方法。其结果就是,使IE"看起来"支持Canvas。
但是这种方法有一个缺点就是无法支持由JS动态生成的canvas标签,辛好explorercanvas提供了一个全局变量G_vmlCanvasManager,这个全局变量有一个方法initElement,传入JS动态生成的节点即可。
目前explorercanvas还有一些bug,或许是IE的bug,其表现是包含canvas的DIV如果display设置为none,然后在显示此DIV,canvas有一定几率需要要重绘,才会显示出来。
下面是一个Demo
没有评论:
发表评论