Javascript下载在Firefox和IE中不起作用

Javascript download not working in Firefox and IE

本文关键字:IE 不起作用 Firefox 下载 Javascript      更新时间:2024-06-01

我正在下载图像。它只能在Chrome中工作,而不能在Firefox或IE中工作。

        var a = document.createElement('a');
        a.href = canvas.toDataURL("image/jpeg").replace("image/jpeg", "image/octet-stream");
        a.download = 'Post-ITIE.jpg';
        a.click()

有人能帮助我它如何适用于所有浏览器吗。

Js报价示例

非常感谢您的帮助。感谢

var fileName = 'Post-ITIE.jpg';
if ('msToBlob' in canvas) { // IE10+
  var blob = canvas.msToBlob();
  navigator.msSaveBlob(blob, fileName);
} else {
  var a = document.createElement('a');
  a.setAttribute('href', canvas.toDataURL());
  a.setAttribute('target', '_blank');
  a.setAttribute('download', fileName);
  a.style.display = 'none';
  document.body.appendChild(a);
  a.click();
  document.body.removeChild(a);
}

它与最初提供的代码有几点不同:

  • 它检查是否存在msToBlob方法以支持在Internet Explorer中下载文件
  • 它将target=blank添加到链接元素中。这样可以确保显示图像,即使浏览器不支持download属性
  • 它将链接添加到文档中,以便.click()在Firefox中实际工作,然后将其删除