试图实现excanvas但得到错误

时间:2011-05-31 21:01:39

标签: javascript jquery excanvas

我正在尝试实现excanvas,以便我的脚本可以在IE以及符合标准的浏览器中运行。我包括jquery,excanvas然后我的脚本。我正在创建画布元素:

data.canvas = $(document.createElement('canvas')).attr('width', data.fontwidth * 80 + 'px').attr('height', data.fontheight * 25 + 'px');
$this.append(data.canvas);

但是当我尝试ctx = data.canvas[0].getContext('2d');时,我在excanvas.js的第160行收到Object doesn't support this property or method' error on that line. Additionally I'm getting an无效参数`错误。

我的完整代码是here。工作(除了IE之外的所有内容)页面是here。我正在使用的excanvas版本是here

更新解决了第二个错误。我必须在调用init函数之前附加元素。

2 个答案:

答案 0 :(得分:3)

来自docs

  

如果您已创建画布   动态元素不会有   将getContext方法添加到   元件。为了让它工作,你需要   在上面调用initElement   G_vmlCanvasManager对象。

var el = document.createElement('canvas');
G_vmlCanvasManager.initElement(el);
var ctx = el.getContext('2d');

答案 1 :(得分:1)

画布宽度属性必须是数字。

<canvas width="164" height="164"></canvas>

不是

<canvas width="164px" height="164px"></canvas>