html2canvas代码不能正常工作IE 11

时间:2016-01-29 18:48:14

标签: javascript internet-explorer internet-explorer-11 html2canvas

我希望使用html2canvas库来制作一个div的图像并将其放入另一个div中。到目前为止,我已经在Safari,Chrome和Firefox中使用它,但不是IE(11是我现在关注的唯一版本)。

我正在使用来自另一个Stackoverflow问题的来自此jsfiddle的代码来应用它:

var aaaDiv=document.getElementById('aaa');
var ttDiv=document.getElementById('tt');

html2canvas(aaaDiv).then(function(canvas) {
// assign id:avatarCanvas to canvas 
canvas.id='avatarCanvas';
// append canvas to ttDiv
ttDiv.appendChild(canvas);

});

https://jsfiddle.net/m1erickson/wtchz972/

我听说IE不喜欢'appendChild',但我不确定如何从那里继续。

2 个答案:

答案 0 :(得分:2)

appendChild功能与您面临的问题无关。自IE6 +以来,appendChild一直受到支持

通过查看html2canvas代码,该库碰巧使用了Promises feature,遗憾的是,在任何版本的IE中都不支持该

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

(虽然Microsoft Edge支持)

答案 1 :(得分:2)

添加这2个JS-如果丢失或损坏,它将自动提供/替换Promise。

<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.min.js"></script> 

来源:Arthez对Roman Canlas的帖子和https://github.com/stefanpenner/es6-promise

的评论