2014-02-13 90 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'); 

希望這有助於!