我的问题是我试图在容器div中附加一个canvas元素
我已经尝试过这段代码并且无法正常工作。当我尝试将浏览器切换到IE8时,它不会在.MainChart
元素中附加canvas元素:
$('.MainChart').append('<canvas width="500" height="500">');
我也试过这段代码,但似乎它也没有用:它附加了,但似乎元素不起作用。在2D中绘制按ID获取元素以及宽度和高度属性也不起作用:
$('.MainChart').html('<canvas width="500" height="500"></canvas>');
你能就这件事给我一些建议吗?
我正在使用Excanvas.js 2.0来支持IE中的canvas元素。
答案 0 :(得分:1)
使用exCanvas动态创建canvas元素时,必须手动初始化它。第一次脚本可以迭代现有元素时加载页面,但是对于稍后添加的动态创建元素,您需要手动执行此操作。
尝试在创建画布之后和尝试获取其上下文之前,将这些行添加到代码中:
var canvas = $('<canvas width="500" height="500"></canvas>');
$('.MainChart').append(canvas);
/// initialize
if (typeof G_vmlCanvasManager !== 'undefined')
G_vmlCanvasManager.initElement(canvas[0]);
/// now this should work
var ctx = canvas[0].getContext('2d');
希望这有帮助!