IE8没有得到canvas元素

时间:2013-07-10 08:02:25

标签: html5 canvas getelementbyid var excanvas

我有如下的画布代码:

 var canvas = document.getElementById('myCanvas');
  var context = canvas.getContext('2d');


  var imageObj = new Image();

  imageObj.src = 'images/floor1.jpg';


  imageObj.onload = function() {
    context.drawImage(imageObj, 0, 0, 610, 290, 0, 0, 610, 290);
    context.beginPath();
    context.rect(62, 66, 66, 25); /* rectangle F sold */
    context.rect(221, 66, 66, 25);
    context.rect(327, 66, 66, 25);
    context.rect(488, 66, 66, 25);
    context.rect(62, 181, 66, 25);
    context.rect(186, 181, 66, 25);
    context.rect(363, 181, 66, 25);
    context.rect(488, 181, 66, 25);
    context.lineWidth = 2;
    context.strokeStyle = 'black';
    context.stroke();
  var dataURL = canvas.toDataURL("image/png");
    document.getElementById('out').src = dataURL;
  };  

但这在IE8中不起作用。 我尝试添加explorercanvas代码:

   < script src="excanvas.js"></script >

    if (typeof(G_vmlCanvasManager) != 'undefined') {
    myCanvas = G_vmlCanvasManager.initElement(myCanvas);
    }

但这不起作用。任何想法?

2 个答案:

答案 0 :(得分:0)

IE 8不支持canvas元素。

http://caniuse.com/#search=canvas

答案 1 :(得分:0)

你的功能似乎是递归的。您附加了一个函数,用于在相同(imageObj)的加载事件上绘制imageObj。请通过删除递归调用来修复它。

除此之外,IE8还不支持Canvas

画布元素✘
二维背景✘
文字✘