0

我有如下画布代码:

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

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

4

2 回答 2

0

IE 8 不支持该canvas元素。

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

于 2013-07-10T08:21:43.777 回答
0

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

更重要的是,IE8 不支持 Canvas

画布元素 ✘<br> 2D 上下文 ✘<br> 文本 ✘</p>

于 2013-07-10T08:21:55.957 回答