我有一个二进制大对象(blob)需要下载。在Chrome、Firefox、IE10及以上版本中可以正常工作,但问题出现在IE9上。
var isIE = /*@cc_on!@*/false || !!document.documentMode;
var blob = new Blob([data], {type: "application/pdf"});
if (isIE) {
window.navigator.msSaveOrOpenBlob(blob, "Download.pdf");
} else {
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = "Download.pdf";
link.id = "TEST";
$('body').append(link);
document.getElementById("TEST").click();
}
问题出在哪里?IE对URL中的字符数有最大限制,最多只能有2.083个字符。这可能是一个关键问题。我有什么替代方案吗?我必须支持IE9...谢谢。
msSaveBlob
和createObjectUrl
可以正常工作,但在IE9中无法运行。我似乎无法解决它,也找不到解决方案。 - mtpultz