繁体   English   中英

IE10-base64编码的图像加载错误

[英]IE10 - base64-encoded image load error

上载10-20个图像(〜2MB,在同步循环中一个接一个)后,IE从base64字符串加载图像时会引发错误。 我的代码中有这样的内容:

var reader = new FileReader();
reader.onload = function (e) {
  var img = new Image();
  img.onload = function () { console.log('onload'); /* some simple work with canvas */ };
  img.onerror = function () { console.log('onerror'); };
  img.src = e.target.result;
};
reader.readAsDataURL(file);

IE会在一段时间后引发错误,并且不想加载更多图像。 我试图使用setTimeout但没有成功。

任何想法为什么会发生?

浏览器可能对数据URI大小有一些限制

试试URL.createObjectURL代替

var src = URL.createObjectURL(file);
var img = new Image();
img.onload = function () { 
    /* some simple work with canvas */ };
    URL.revokeObjectURL(src); 
    console.log('onload');
img.onerror = function () { console.log('onerror'); };
img.src = src;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM