ie8下excanvas在window组件中使用时,有红色图形显现
程序员文章站
2022-06-26 15:30:26
...
1、背景
项目中使用canvas绘制图形,但是需要指出IE8浏览器,因此使用了excanvas.js插件来做支撑
excanvas是使用IE的VML对象,将canvas的api实现一遍,来达到可以使用cavans
当是的图形是在window组件中使用(当时做的是个动态图表,每隔5秒向服务端取1个数据,然后前端缓存这些数据,生成动态线。
由于要缓存数据,当时在数据没有回来时,组件实例化生成了,canvas元素也生成了。
在数据回来前没有绘制动作,导致excanvas生成的默认背景色显示出来了),图形绘制前有红色图形闪现一下。
// excanvas代码 var overlayEl = el.cloneNode(false); // Use a non transparent background. overlayEl.style.backgroundColor = 'red'; overlayEl.style.filter = 'alpha(opacity=0)'; canvasElement.appendChild(overlayEl);
2、最后解决方法
俩种方案,在数据回来前不要去生成canvas,或者将这个背景色改成其他颜色