2014-02-13 66 views
0

我的问题是,我试图在容器div中追加画布元素 我试过这段代码,它不工作。当我尝试我的浏览器切换到IE8它不是追加canvas元素在.MainChart元素:将画布添加到IE8中的div

$('.MainChart').append('<canvas width="500" height="500">'); 

我也试过这个代码,但现在看来,这不是工作压力太大:它追加,但似乎该元素不加工。在2D中绘制通过ID和宽度和高度属性获取元素不起作用:

$('.MainChart').html('<canvas width="500" height="500"></canvas>'); 

你能给我一些关于此事的建议吗?

我使用Excanvas.js 2.0来支持IE中的画布元素。

回答

1

当您使用exCanvas动态创建画布元素时,您必须手动初始化它。当页面首次加载时,脚本可以迭代现有元素,但对于稍后添加的动态创建元素,您需要手动执行此操作。

尝试增加这几行代码创建的画布,然后再尝试获得它的上下文后:

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'); 

希望这有助于!