Jquery 在IE8中将画布附加到div

Jquery 在IE8中将画布附加到div,jquery,internet-explorer-8,html5-canvas,excanvas,Jquery,Internet Explorer 8,Html5 Canvas,Excanvas,我的问题是,我试图在容器div中附加canvas元素 我尝试过这个代码,但它不起作用。当我尝试将浏览器切换到IE8时,它不会在.MainChart元素中追加canvas元素: $('.MainChart').append('<canvas width="500" height="500">'); $('.MainChart')。追加(''); 我也尝试过这段代码,但它似乎也不起作用:它附加了,但元素似乎不起作用。二维绘图按ID获取元素以及“宽度”和“高度”属性也不起作用: $('

我的问题是,我试图在容器div中附加canvas元素 我尝试过这个代码,但它不起作用。当我尝试将浏览器切换到IE8时,它不会在
.MainChart
元素中追加canvas元素:

$('.MainChart').append('<canvas width="500" height="500">');
$('.MainChart')。追加('');
我也尝试过这段代码,但它似乎也不起作用:它附加了,但元素似乎不起作用。二维绘图按ID获取元素以及“宽度”和“高度”属性也不起作用:

$('.MainChart').html('<canvas width="500" height="500"></canvas>');
$('.MainChart').html('');
关于这件事你能给我一些建议吗


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

当您使用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');
var canvas=$('');
$('.MainChart').append(画布);
///初始化
如果(G_vmlCanvasManager的类型!=“未定义”)
G_vmlCanvasManager.initElement(canvas[0]);
///现在应该可以了
var ctx=canvas[0]。getContext('2d');
希望这有帮助